Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
Clear All
new posts

    DataSource <ID>_inheritsFrom

    I'm getting the following WARNINGs in the developer console and don't know how to debug it. I do have a DataSource with a ChipSTA_Run_Name ID. It does not directly use the inheritsFrom attribute anywhere. There are no Objects that share the name, nor look to have it generated per the developer console Watch window.

    Details:

    SmartClient Version: v12.1p_2021-10-22/PowerEdition Deployment (built 2021-10-22)

    These duplicate warnings appear back to back in this particular run:

    *09:34:22.471:XRP7:WARN:Log:ID 'ChipSTA_Run_Name_inheritsFrom' for object '[DataSource ID:ChipSTA_Run_Name_inheritsFrom]' collides with the ID of an existing object. This can occur when the specified ID for a new SmartClient Canvas is the same as a native attribute of 'window', or another variable already assigned in global scope. The global reference to this object will be replaced. Consider instead using a different ID to avoid this collision altogether, especially if the colliding ID is a native attribute of window. Replacing such objects often has serious and unintended consequences. In this case, the current value of window['ChipSTA_Run_Name_inheritsFrom'] is:

    DataSource{sequenceMode: "jdbcDriver",
    allowAdvancedCriteria: true,
    tableCode: "0a5fd29ecac0c07ecf7720f2bd320c7b",
    serverType: "sql",
    ID: "ChipSTA_Run_Name_inheritsFrom",
    generatedBy: "v12.1p_2021-10-22/PowerEdition Deploymen..."[52],
    fields: Obj,
    dataSourceVersion: "1",
    canQueueRequests: true,
    name: "ChipSTA_Run_Name_inheritsFrom",
    dataPaths: Obj,
    mergedFields: Obj,
    }

    *09:34:22.659:XRP7:WARN:Log:ID 'ChipSTA_Run_Name' for object '[DataSource ID:ChipSTA_Run_Name]' collides with the ID of an existing object. This can occur when the specified ID for a new SmartClient Canvas is the same as a native attribute of 'window', or another variable already assigned in global scope. The global reference to this object will be replaced. Consider instead using a different ID to avoid this collision altogether, especially if the colliding ID is a native attribute of window. Replacing such objects often has serious and unintended consequences. In this case, the current value of window['ChipSTA_Run_Name'] is:

    DataSource{sequenceMode: "jdbcDriver",
    autoDeriveSchema: true,
    allowAdvancedCriteria: true,
    tableCode: "0a5fd29ecac0c07ecf7720f2bd320c7b",
    inheritsFrom: [DataSource ID:ChipSTA_Run_Name_inheritsFrom],
    serverType: "sql",
    operationBindings: Array[2],
    isServerDS: true,
    dropExtraFields: false,
    ID: "ChipSTA_Run_Name",
    fields: Obj,
    canQueueRequests: true,
    name: "ChipSTA_Run_Name"}
    DataSourse :
    Code:
    <DataSource ID="ChipSTA_Run_Name" serverType="sql" tableName="ChipSTA_Run_Name" dropExtraFields="false" autoDeriveSchema="true"
    serverConstructor="beer.server.chipsta.ChipRunName" >
    <fields>
        <field name="Comment" type="text">
          <validators>
            <validator type="lengthRange" min="0" max="7900" />
          </validators>
        </field>
    
        <field name="PK_Project" type="text" tableName="Project"/>
        <field name="PK_ChipSTA_Run_Name" type="sequence" primaryKey="true" hidden="true" />
        <field name="PredictedECOResults" type="text" customSQL="true" />
        <field name="Name" type="text" title="Run Name" customSQL="true" />
        <field name="CT_on_create" type="datetime" title="Create" customSQL="true" />
    </fields>
    <operationBindings>
    
            <operationBinding operationType="fetch" operationId="fetchAndUpdateFromPreviousComment" >
                <serverObject lookupStyle="new" methodName="fetchAndUpdateFromPreviousComment" className="beer.server.chipsta.ChipRunName"></serverObject>
            </operationBinding>
    
            <operationBinding operationType="fetch" operationId="fetchAllRunNamesForComparisonDropdown">
                <selectClause>
                    PK_ChipSTA_Run_Name, Name, PK_Project, CT_on_create, CONCAT(ProjName,' ', Revision) as ProjName_Revision, CASE WHEN PredictedECOResults > 0 THEN 'Yes' ELSE 'No' END as PredictedECOResults
                </selectClause>
                <tableClause>
                    ChipSTA_Run_Name JOIN Project on FK_idProject = PK_Project
                </tableClause>
                <orderClause>
                    CT_on_create DESC
                </orderClause>
            </operationBinding>
        </operationBindings>
    </DataSource>

    #2
    Hi Eric, if you take a look at the docs for autoDeriveSchema you'll see that it works via the inheritsFrom mechanism.

    As far as why you are getting the error, it looks like you are probably loading the same DataSource multiple times - possibly due to multiple <script> tags pointing to the DataSourceLoader, or duplicate load() calls, or a mix of both approaches for loading.

    Comment


      #3
      Thanks for pointing all of that out. I had actually checked the script tags but didn't think to remove the ds name entirely from it at the time. It looks like the data source is getting loaded somewhere else in the application as well.

      Comment

      Working...
      X