最近のアクセス:
GeneXus X または GeneXus X Evolution 1 / Evolution 2 への変換時に発生するエラーとメッセージ
ここでは、GeneXus 9.0 のナレッジベースを GeneXus X または GeneXus X Evolution 1 / Evolution 2 用に変換するときに発生する可能性のあるエラーとメッセージについて説明します。
GeneXus X と GeneXus X Evolution 1 / X Evolution 2 で、旧バージョンのナレッジベースを変換したり .xpz ファイルをインポートしたりするときには、多数のコントロールが実行されます。
次に、変換プロセスの間に表示されるメッセージとエラーをリストし、問題の解決方法の提案を示します。

エラー

ナレッジベースの変換中にエラーが表示されると、プロセス全体がキャンセルされます。
  • Could not connect to GXpublic.It may not have been installed during GeneXus setup.You may need to reinstall GeneXus and/or GXpublic 
もっとも可能性の高い原因は、GeneXus 9.0 より前のバージョンのナレッジベースの変換を試みたことです。このナレッジベースをまず GeneXus 9.0 に変換してから、GeneXus X に変換してください。
  • 'Visible' | 'WindowState' invalid property.
このエラーは、Windows 環境のみに適用されるプロパティがセクション区切りなしで記載され、それをオブジェクトが参照した場合に表示されます。
解決方法: Environment 項目属性 (Win、Web、BC、Text) を使用してコードを Win セクション内にラップし、再度変換してください。これで、変換時にエラーではなく警告が表示されるようになります。 
  • DBMS <dbms_name> in DataView platform is not supported in this version.
このエラーは、データ ビュー プラットフォームで参照されている DBMS が現行バージョンでサポートされていないことを警告しています。このナレッジベースを変換するには、該当する DBMS を削除する必要があります。
  • Error distributing:'GXPublic.GXPublic.5' failed with no error message available, result code:-2147417851(0x80010105)
GeneXus 9.0 で強制的にリビルド (rbld -y) を実行し、再度変換してください。
  • Failed processing object properties.''value1', 'value2'' invalid value for property 'AttValueRange'.
このエラーは、値の範囲を示すプロパティにカンマ区切り値が使用されている場合に表示されます。期待される動作は、スペース/空白文字区切り値です (ヘルプを参照)。GeneXus 9.0 でプロパティを変更し、再度変換してください。
  • Reference to 'X' by name can't be saved
GeneXus 9.0 で定義したWebサービスは、GeneXus X 以上の外部オブジェクトに変換されます。このエラーは、外部オブジェクトが「X」データ タイプを参照しているにも関わらず、そのデータ タイプが存在しないことを示しています。詳しくは次を参照してください:SAC 25788
  • Converting Structured Data Type '<SDT_NAME>' Failed. error:'' invalid value for property 'ATTCUSTOMTYPE':Cannot convert value ''.
    変換で、データ タイプのないエレメントが含まれる SDT (SDT_NAME) が検出されています。GeneXus 9.0 上で修正し、ナレッジベースを再度変換してください。詳しくは、SAC 24192 を参照してください。
  • <SDT name> name conflicts with <object type> <object name>
変換プロセスでは、各 GX オブジェクトの接頭語として、そのオブジェクトタイプが追加されます。新しい名前 (接頭語 + オブジェクト名) がすでに SDT 名として使用されていることがあります。この場合、変換プロセスは失敗します。詳しくは次を参照してください:SAC 25976
  • Transaction attribute <項目属性名> cannot be part of the primary key because its data type is 'LongVarChar'.
LongVarChar 項目属性を主キーの一部にすることはできません。旧バージョンでは、このような主キーを持つトランザクションを保存することができましたが、制限がいくつかあります。
  • 警告:Are you trying to use clause 'Defined by'?Missing space.(Source, Line:NN, Char:MM)
    このメッセージは、defined by 節を定義するときに、後続する項目属性との間にスペースを入れなかった場合 (例: defined byCustomerCode) に表示されます。
    次のようなメッセージが表示されることもあります:
             ERROR:Expecting assignment operator, e.g. 'defined = byAttName'.(Source, Line:NN, Char:MM)
             ERROR:Invalid attribute 'defined' (Source, Line:NN, Char:MM)
             ERROR:Invalid attribute 'byAttName' (Source, Line:NN, Char:MM)
            解決方法: defined by と項目属性をスペースで区切ります (例: defined by CustomerCode)。
  • <Attribute Name> must be referenced in the transaction's structure.
    このエラーは、ルール/イベントで項目属性を参照するトランザクションをインポートまたは保存し、この項目属性が、トランザクションの構造で定義されていない場合に表示されます。詳しくは次を参照してください:SAC 29372
  • 'Color' invalid property.(Events, Line:X, Char:Y)
ナレッジベースで Query Viewer コントロールを使用しており、クエリのエレメントに次のコードを使用して色を設定している場合:
&Axis.Format.Color = rgb(0,0,255)
上記のエラー メッセージが表示されます。この問題を解決するには、次のコードを代わりに使用します:
&Axis.Format.Style = 'color:#0000FF'

警告

  • <Function name> is a deprecated function.(Object Part, Line: x, Char: n)
このメッセージは、オブジェクトコードで参照されている関数が、GeneXus Xで「標準関数」としてサポートされていない場合に表示されます。この警告の詳細、および警告の発生を防ぐ方法については、廃止予定の関数の一覧を参照してください。
  • Unreachable code (Line: x, Char: n)
このメッセージは、あるオブジェクトのコードの一部が実行されない場合に警告として表示されます。
この例では、 [ bc ] の下にあるコードは、 [ bc ] が [ web ] セクションの下にあるためトリガーされません。
 [ web ] 
{
       Noaccept(customerid);
        [ bc ] 
       Customerid = udp(‘numerar’) if customerid.isnull();
}
  • <expression> is a non-standard expression.
    <control> is assumed to be a control name as support for non-standard expressions is enabled.
コードの矛盾を最小限に抑えるため、関数プロパティが、変換プロセス中または以前のバージョンの xpz ファイルのインポート時に、非標準の関数を許容するよう、一時的に変更されています。
  • <Win expression> is a non-standard expression.
    <Control> is assumed to be a control name as support for non-standard expressions is enabled.
    <Property> is a non-standard expression and support for non-standard expressions is enabled.
このメッセージは、次のような変換を実行すると表示されます:
 [ Win ]  
{
Form.WindowState = 2
}
ここに、以前トランザクション Win フォーム内で参照されたコントロール (フォーム)と、Win 環境にのみ適用されるプロパティ (WindowState) があります。
GeneXus X では Win フォームはインポートされないため、コントロールはフォームに存在しなくなり (インポートされたオブジェクト上では意味を持たない)、この表現は「非標準」とみなされます。コントロールが Web フォーム上に存在している場合も、プロパティが Win 環境のみに適用されるものであれば、同様の警告が発生することがあります。
コードが [ Win ] 環境セクションに含まれている場合はオブジェクトが統合されて、この警告が表示されます。この警告は、オブジェクトを GeneXus X に変換するため、このセクションが「非標準」として検証されていることを示します。
  • Converting StructuredDataType <SDT Object name>...
    Redefined as domain.All references to the SDT were changed accordingly.
GeneXus X は、コレクションとして 1 つのエレメントだけが含まれる SDT 定義をサポートしていません。これを実行するには、ドメインを定義し、 [ Collection ] プロパティを [ True ] に設定します。
GeneXus 9.0 で定義された SDT の例を次に示します。
イメージ:6096.jpg
変換プロセス中、 [ ArrayOfNumeric ] と [ ArrayOfProducts ] は自動的にドメインに変換されます。
  • Importing <ObjectType> <ObjectName1>...Call to non-defined object <ObjectName2> (Line:2, Char:1)
このメッセージは、ObjectName1 に、GeneXus X (Winオブジェクト) で有効でないオブジェクトへの呼び出しがあることを示します。このような呼び出し (ワーク パネルなど) があることは問題ではありません。呼び出し元が変換された後、To be Defined オブジェクトを、呼び出されるワーク パネル名とともに定義する必要があります。
このメッセージは、以前のバージョンの xpz ファイルのインポート時に、呼び出されたオブジェクトがエクスポート ファイルに含まれていなかった場合にも表示されます。
  • Invalid DBMS SQL Server CE.Changed to SQL-Server
DBMS として SQL Server CE はサポートされていません。すべてのデータストア参照は SQL Server に変更されます。
  • Web フォームの検証
    GeneXus X には、Web オブジェクトの HTML コードを解析して適切に構成されているかチェックする新しいパーサーが搭載されています。エラーが検出されると自動的に修正し、次のメッセージが出力ウィンドウ (conversion.txt) で表示されます。
警告:Webform modified to be XHTML well-formed
  • <variable> is an invalid variable name; redefined as <variable>.
以前の GeneXus のバージョンでは、名前に「.」 (ドット) が含まれる変数 (この命名法は主に、古いバージョンで変数がデータ ビューのフィールドを参照していることを示すため使用されていました)、または「_」 (アンダー スコア) や数字が先頭に来る変数を定義することができました。GeneXus 9.0 では、このような変数は定義できませんでしたが、互換性維持のためにインポートすることは可能でした。
GeneXus X では、このような変数はサポートされなくなったため、変換プロセスで変数とその参照の名前が次のように変更されます。
  • 変数が「_」(アンダースコア) または数字で始まる場合、その文字は「V」に置き換えられます。同じ名前の変数がすでに存在する場合は、「V_x1」、「V_x2」などへ変更が試みられます。
  • 変数にドット (.) が含まれている場合は、アンダースコア (_) に置き換えられます。
これは、このメッセージによって警告されます。
  • <Subroutine Name> is an undefined subroutine in environment [ 'Win' | 'Text' | 'BC' | 'Web' ]
このエラーは、サブルーチンが特定の環境下 (例: [ web ] ) で定義されているにも関わらず、別の環境から (例: [ Win ] )、または希望する環境の外から (セクション区切りなしで)、起動されたことを示します。
解決方法: サブルーチンの起動部分を対応する環境でラップして、再度変換してください。
  • <control> with duplicate control name 'X' renamed to 'Y'. 
GeneXus X では、以前のバージョンからオブジェクトをインポートする際に新しい検証が実行されます。重複するコントロール名は許可されません。これが発生した場合、プロセスによって一方のオブジェクト コントロール名が変更されます。例:「Table with duplicate control name 'Table1' renamed to 'Table3'.」というメッセージが表示された場合は、Table1 という名前が重複しているので、Table3 に置き換えられます。
詳しくは SAC 25824 を参照してください。
  • Duplicate variable name ignored.
同じオブジェクトに、同じ名前の変数が複数あります。重複する変数は削除されました。
  • Duplicate description 'No' for control values; 'N' value ignored.
コンボ ボックスの同じテキストに、同じ値が複数設定されています。この場合は、次のエレメント (テキスト, 値) が設定されています:(Yes, Yes)、(No, No)、(No, N)。3 つ目の値が無視されます。
  • <control> with duplicate control name %1 renamed to %2.
変換プロセスによって、フォームに同じ名前のコントロールが複数ないかどうかがチェックされます。詳しくは、SAC # 25824 を参照してください。
  • Index %1 has the same structure as %2.
テーブルに同じ構造のインデックスが 2 つ付いているため、その 1 つが無視されます。
  • See \s4cg.h for details on duplicate keys and/or bad serial number
このメッセージは、ナレッジベースの変換中に表示されます。メッセージを無視して変換を続行できますが、これ以上同じメッセージが表示されるのを防ぐには、古いナレッジベースを再ビルド (rbld -y) してから、変換してください。
  • %1Attribute is not in transaction structure
Windows フォームまたは Web フォームにあるオブジェクトが項目属性を参照していますが、その項目属性がトランザクションの構造内に存在しません。
  • %1is not a valid event for control 'MenuBar'.
オブジェクトに、存在しないメニューバーを参照しているイベントがあります。
  • Unsupported font '<Non TrueType Font Name>' changed to '<True TypeFont Name>' in controls <ControlName1>, <ControlName2>, <ControlName3>, ....
変換中にフォント タイプが検証され、TrueType でないフォントが見つかった場合は、その定義が TrueType フォントに自動的に変更されます。詳しくは、SAC # 26660 を参照してください。
  • spc0023:Parameter 0 for method 'xxx' has wrong type
このメッセージは、メソッド xxx が列挙型ドメイン パラメーターを持ち、列挙型の値を使用している場合に表示されます。アプリケーションを継続して適切に使用できるように、コードを変更することを推奨します。変更には、Convert メソッドを使用するか、列挙型の名前を使用します。次に、例を示します:
&WorkflowRestrictionDefinition = &WorkflowOrganizationalModel.AddRestrictionDefinition(&name,&description,WorkflowRestrictionDefinitionType.Convert(1))
&WorkflowRestrictionDefinition = &WorkflowOrganizationalModel.AddRestrictionDefinition(&name,&description,WorkflowRestrictionDefinitionType.INHERITABLE)

サブページ
Created: 14/09/18 03:18 by Admin Last update: 15/01/09 02:13 by Admin
カテゴリ
Powered by GXwiki 3.0