Search This Blog

SBL-DAT-00416: No field matches identifier '%1'. Please ask your systems administrator to check your application configuration.

Applies to:

Error Message Area:Data Manager - DAT
Version:Siebel 7.5.3

Purpose

This document is intended to provide cause and corrective action information about Siebel Error Message SBL-DAT-00416: No field matches identifier '%1'. Please ask your systems administrator to check your application configuration.

Scope

This document is informational and intended for any user.

SBL-DAT-00416: No field matches identifier '%1'. Please ask your systems administrator to check your application configuration.

Explanation

The accessed field is not defined in the repository.
1.A field required by the application functionality has not been extracted.
2.You are trying to reference a field that does not exist in the repository but may have previously existed.
3.Calculated value of a business component field contains a misspelling or refers to another field that does not exist.
4.Incorrect search specification on an applet.
5.When attempting to repair orphaned child records (running the CleanUp() function) as specified in Siebel Bookshelf version 7.5.3 > Siebel Remote and Replication Manager Administration Guide > Client-Side Merge Issues on the Server > Solution, it exits with the error: ([0] No field matches identifier 'CREATED_BY'.

Corrective Action

1.Ensure that all required fields are included in the application configuration.
2.Investigate any non user initiated queries (for example, predefined query) which is being applied by default and may be referencing a non-existent field. Remove the reference to the non-existent field.
3.In Siebel Tools, choose Business Component > specific business component > Field. Verify there are no misspellings in the Calculated Value and that the fields listed are valid. For more information, refer to Siebel Bookshelf version 7.5.3 > Siebel DeveloperÆs Reference > Operators, Expressions, and Conditions > Calculated Field Values and Field Validation.
4.Verify the search specification on the applet.
5.If you are running Siebel application version 7.0.x or 7.5.3.x, Change Request 12-J7NVK1 has been logged and addressed in Siebel Maintenance Release 7.5.3 QF0215. Leave CSM Logging turned on so all merge transactions are logged on the server. Once the Quick Fix (QF) is applied, run the CleanUp() function and all orphaned child records will be re-associated to their parents. (Does not apply to Siebel application version 7.7)


Applies to:

Siebel Tools - Version: 7.8.2.3 [19221] and later   [Release: V7 and later ]
Oracle Solaris on SPARC (64-bit)
Product Release: V7 (Enterprise)
Version: 7.8.2.3 [19221]

This document was previously published as Siebel SR 38-3531062153.

Symptoms

If GetSearchExpr includes misspelled Field Name, using value SetSearchExpr causes SBL-DAT-00416 error.

Setting the search expression back to the same value as was retrieved in the GetSearchExpr returns error "Text constant (devmehta) should be included in single quote". While it should return "There is no field id matching identifier submitter-id"

 

Here are the steps to reproduce an issue:
1. Log into client.
2. Go to Service Request
3. Click Query
4. Add the following into Last Name – “[A] = a” ( leave off the surrounding quotes)
5. Click Go
6. System returns SBL-DAT-00416 error.
7. Go into tools
8. Add the following script to Service Request BC, PreQueryRecord event.

var sString = this.GetSearchExpr();
if (sString != "")
{
  this.SetSearchExpr(sString);
}


 

9. Compile
10. Go back into client and repeat steps 1-5
11. Note that you get a different error message now. This should not cause differing behavior in the client.

Cause

This behavior is a Product Defect, and CR 12-1MHR94D has been created to address this.

Solution

As a work around, just ignore the error. This will return a <?> instead of the field that is misspelled, which is not desirable, but a message that is closer .

So, change the “catch” to:

var sString = this.GetSearchExpr();
if (sString != "")
{
    try
    {
      this.SetSearchExpr(sString);
    }
    catch(e)
    {
      if (e.errText.substring(0,13) == "Text constant")
      {
//       Bypass this error
      }
    }



Applies to:

Siebel Tools - Version: 7.5.3.5 SIA [16183] and later   [Release: V7 and later ]
Information in this document applies to any platform.

Symptoms

We want to show the active employees in the associate applet "Employee Assoc Applet".
Add a search spec: [Employment Status] = 'Actif'

This field is active on the BC "Employee". The BC user prop "Inner Join Extension Table 3" value S_EMP_PER is active. But when we compile and execute we have an error "Employment Status" not found!

We have checked the syntax (used the copy / paste), but this error continues. We tried with another field (based on S_EMP_PER) and the same error is displayed. But with another field ([Alias] based on S_CONTACT), it's working. Could you explain me, and help me to find a solution.

Cause

The behavior described by the customer has been reproduced using standard Siebel application version 7.5.3.15 SIA against the sample database. Here are the steps:

1. Using Siebel Tools, add the following search specification to applet 'Employee Assoc Applet':
[Employment Status] = 'Active'

2. Launch Siebel Call Center application as SADMIN.
3. Navigate to view 'Assignment Group Employees View' (Site Map > Assignment Administration > Assignment Rules > Employees).
4. Click the "New" button in the "Employees" list applet.
> You will get the following error:
- - -
No field matches identifier 'Employment Status'.

Please ask your systems administrator to check your application configuration.(SBL-DAT-00416)
- - -

The cause of this behavior is the fact that the "Employees" list applet, 'Assignment Group Employee List Applet', and the associate applet invoked when you click the "New" button, 'Employee Assoc Applet', are not based on the same BC. The first applet is based on BC 'Assignment Group Employee' whereas the second applet is based on BC 'Employee'. The field doesn't exist in the 1st BC.

The "Employees" list applet is 'Assignment Group Employee List Applet' and the associate applet invoked when you click the "New" button is 'Employee Assoc Applet'.

Solution

With this configuration the field 'Employee Status' needs to exist also in BC 'Assignment Group Employee'. The solution is therefore to configure the same field 'Employment Status' in BC 'Assignment Group Employee'.

Note that having an applet and its association applet based on different BC is generally not recommended. Such scenario implies to keep the 2 BC "synchronized", namely to have the same fields, and causes specific behavior related to visibility.

There are several postings on Metalink 3 that discuss such scenarios, for example: Note 480262.1, Note 510763.1, Note 507202.1, and Note 530683.1.

Bug 12-1Q62YQB has been logged to address the issue observed with standard view 'Assignment Group Employees View'.

References

BUG:12-1Q62YQB - ERROR SBL-DAT-00416 BECAUSE A LIST APPLET AND ITS ASSOC APPLET ARE NOT BASED ON THE SAME BC
NOTE:507202.1 - How to change the visibility mode of the association applet in view Contacts > Relationships?
NOTE:530683.1 - How to change the visibility mode of the association applet in view Accounts > Account Affiliations?
NOTE:510763.1 - Primary Account Name field is always empty when exposed in applet Pharma Attendee Call Assoc Applet
NOTE:480262.1 - Assoc Applet does not display all field values - some fields are always empty

Applies to:

Siebel Tools - Version: 7.8.2 [19213] - Release: V7
z*OBSOLETE: Microsoft Windows Server 2003
Product Release: V7 (Professional)
Version: 7.8.2 [19213]
Database: Oracle 9.2
Application Server OS: Microsoft Windows 2003 Server SP1
Database Server OS: Sun Solaris 5.6

This document was previously published as Siebel SR 38-3038443443.

Symptoms

Hello-

We are experiencing the following errors when creating a new Opportunity record:

ObjMgrQueryLog    Warning    2    0    2006-05-15 15:06:44    (query.cpp (5210)) SBL-DAT-00416: No field matches identifier 'Opportunity'.

ObjMgrSRFLog    Warning    2    0    2006-05-15 15:06:44    (objdef.cpp (2199)) SBL-DAT-00144: Could not find 'Import Object' named 'Opportunity'. This object is inactive or nonexistent.

I have reviewed some articles on supportweb including the article called "Siebel Error Message SBL-DAT-00144" which states that "3. This is a warning message and is benign. You can ignore the message. If the value after the component event is not Warning, then investigate to determine if the error is fatal."

I have also reviewed the article called "Siebel Error Message SBL-DAT-00416". The problem is that the first error (SBL-DAT-00416) is coming up in the application as an alert box, and will not allow the creation of a new record. I have examined all the applets and the buscomp on this view (including search specs, calculated values, server scripts, joins, etc) for references to a field called 'Opportunity' and have found none.

Any help you can provide would be greatly appreciated.


Thanks,

Solution

Message 1

For the Benefit of others:

Customer Issue:

We are experiencing the following errors when creating a new Opportunity record:

ObjMgrQueryLog    Warning    2    0    2006-05-15 15:06:44    (query.cpp (5210)) SBL-DAT-00416: No field matches identifier 'Opportunity'.

ObjMgrSRFLog    Warning    2    0    2006-05-15 15:06:44    (objdef.cpp (2199)) SBL-DAT-00144: Could not find 'Import Object' named 'Opportunity'. This object is inactive or nonexistent.

I have reviewed some articles on supportweb including the article called "Siebel Error Message SBL-DAT-00144" which states that "3. This is a warning message and is benign. You can ignore the message. If the value after the component event is not Warning, then investigate to determine if the error is fatal."

I have also reviewed the article called "Siebel Error Message SBL-DAT-00416". The problem is that the first error (SBL-DAT-00416) is coming up in the application as an alert box, and will not allow the creation of a new record. I have examined all the applets and the buscomp on this view (including search specs, calculated values, server scripts, joins, etc) for references to a field called 'Opportunity' and have found none.

Any help you can provide would be greatly appreciated.

Resolution:

In the Standard Revenue Business Component their exists a field “Opportunity” with following properties

Name: Opportunity
Join: Opportunity
Column: NAME
Force Active: True
PickList: PickList Opportunity
PreDefault Value: Parent: 'Opportunity.Name', 'Project.Opportunity Name', 'FS Agreement Item.Opportunity Name'

But the customer’s Revenue Business Component was missing this field. Upon adding this field and property solved the issue.

Thank you,
Siebel Technical Support


Applies to:

Error Message Area:Data Manager - DAT
Version:Siebel 7.7

Purpose

This document is intended to provide cause and corrective action information about Siebel Error Message SBL-DAT-00416: No field matches identifier '%1'. Please ask your systems administrator to check your application configuration.

Scope

This document is informational and intended for any user.

SBL-DAT-00416: No field matches identifier '%1'. Please ask your systems administrator to check your application configuration.

Explanation

The accessed field is not defined in the repository.
1.A field required by the application functionality has not been extracted.
2.You are trying to reference a field that does not exist in the repository but may have previously existed.
3.Calculated value of a business component field contains a misspelling or refers to another field that does not exist.
4.Incorrect search specification on an applet.
5.When attempting to repair orphaned child records (running the CleanUp() function) as specified in Siebel Bookshelf version 7.5.3 > Siebel Remote and Replication Manager Administration Guide > Client-Side Merge Issues on the Server > Solution, it exits with the error: ([0] No field matches identifier 'CREATED_BY'.

Corrective Action

1.Ensure that all required fields are included in the application configuration.
2.Investigate any non user initiated queries (for example, predefined query) which is being applied by default and may be referencing a non-existent field. Remove the reference to the non-existent field.
3.In Siebel Tools, choose Business Component > specific business component > Field. Verify there are no misspellings in the Calculated Value and that the fields listed are valid. For more information, refer to Siebel Bookshelf version 7.5.3 > Siebel DeveloperÆs Reference > Operators, Expressions, and Conditions > Calculated Field Values and Field Validation.
4.Verify the search specification on the applet.
5.If you are running Siebel application version 7.0.x or 7.5.3.x, Change Request 12-J7NVK1 has been logged and addressed in Siebel Maintenance Release 7.5.3 QF0215. Leave CSM Logging turned on so all merge transactions are logged on the server. Once the Quick Fix (QF) is applied, run the CleanUp() function and all orphaned child records will be re-associated to their parents. (Does not apply to Siebel application version 7.7)


Applies to:

Siebel Tools - Version: 8.1.1 SIA [21111] and later   [Release: V8 and later ]
Information in this document applies to any platform.

Symptoms


Siebel Version: 8.1.1

Statement Of Issue: PDQ search using calculated field is not working on Opportunity BC in 8.1.1. The same was working fine for version 7.5.3


PDQ used: 'Opportunity'.Search = "(([Division_KCIB_KC] = ""N"" OR [Division_KCIB_KC] IS NULL) AND ([Master Status_KC]=""I"")) OR (([Division_KCIB_KC] = ""Y"") AND [Status] = ""CLOSED"")"

where Division_KCIB_KC is a calculated field with value IIF(DivisionName() = "KPIT","Y", "N")

Error Thrown:

[1] Unable to execute named query: 6. All Closed Opportunities. (SBL-UIF-00356)
[2] No field matches identifier 'N'.
Please ask your systems administrator to check your application configuration. (SBL-DAT-00416)

Cause


Whenever calculated field value is compare with boolean values in the PDQ and calculated field contains profile attributes or user session details then the error is seen.
Like using: LoginName(), DivisionName(), GetProfileAttr("ApplicationName") etc.


Solution

Instead of comparing the boolean values, use the string text for comparison as follows:

1. Create a calculated field as follows:

Business Component: Opportunity
Field: DivisionTest //create a new field
Calculated: True
Calculated Value: "KPIT"

2. In the Application - Predefined Queries set the expression as follows:
PDQ Name: 6. All Closed Opportunities
'Opportunity'.Search = "( [DivisionTest] <> DivisionName() AND [Master Status_KC]=""I"") OR ([DivisionTest] <> DivisionName() AND [Status] = ""CLOSED"")"

No comments:

Post a Comment