Some common DMS file errors
My transfer to .sav fails with the following error:
Error : Failed to create target table: myOutputDataSource - Error creating target
schema myOutputDataSource - SAV Modification to the layout of data source 'MySavFile'
(a DDL operation) attempted at a point where this is not yet or no longer possible.
EXEC XP_SYNCDB
This error usually occurs when you attempt to export data to an existing .sav file. How you get around this error depends on what you are trying to achieve. If you want to export the data to a new file, simply rename or delete the existing file or move it to another location before running the transfer again.
However, if you want to export additional records to the existing file, you will only be able to do this if:
▪You use the output metadata file from the previous export as the input metadata source for the current export, and
▪The structure of the data exactly matches the data you exported previously.
If the structure of the data is unchanged and the output metadata file from the previous export is available, the export should succeed if you change the DMS file accordingly and run the file again.
When the InputDataSource section specifies an .mdd file that is created in the OnBeforeJobStart Event section, you will get two validation errors. For example:
Error opening input data source: myInputDataSource
Failed to close the InputDataSource: myInputDataSource
This is because the validation takes place before the input metadata has been created. You can safely ignore these errors.
My DMS file is failing with an “Object reference not set to an instance of an object” error.
Check that you have specified a metadata source in the InputDataSource section (see
InputDataSource section). If not, either because you are running a case data-only transfer or because you are using a non-UNICOM Intelligence Data Model OLE DB provider, you will need to remove these sections:
These Event sections are available only when you have specified an input metadata source.
My export from Quanvert fails with the following error. Why is this?
Error : Metadata error, the specified input metadata could not be opened At line 3
Illegal xml character.
This problem can occur when the missing= keyword has been used in the Quantum specification that was used to set up the Quanvert database. This can lead to the illegal Ctrl-A character appearing in the QVLabel custom property on the affected variable(s) in the MDM Document. If you use the Quanvert MDSC to create an .mdd file in the OnBeforeJobStart Event section, you can remove the illegal character using code similar to the following:
Dim MDMField, MDMGridField, CtrlA_Location
For Each MDMField In MDM.Fields
CtrlA_Location = Find(MDMField.Properties["QVLabel"], ChrW(1))
If CtrlA_Location > 0 Then
MDMField.Properties.Item["QVLabel"] = _
Left(MDMField.Properties["QVLabel"], CtrlA_Location-0)
End If
If MDMField.ObjectTypeValue = 2 Then
' MDMField is a grid
For Each MDMGridField in MDMField.Fields
CtrlA_Location = Find(MDMGridField.Properties["QVLabel"],
ChrW(1))
If CtrlA_Location > 0 Then
MDMGridField.Properties.Item["QVLabel"] = _
Left(MDMGridField.Properties["QVLabel"], CtrlA_Location-0)
End If
Next
End If
Next
The
ChrW function is used to return the Ctrl-A character.
Some other common error messages and suggested solutions:
Error : Metadata error, the specified MetaDataOutputName could not be saved
Make sure that the location you specified for the output metadata file exists, is not read-only, and that you have suitable permissions for it. UNICOM Intelligence Professional 2.1 does not create a new folder if the folder you specify does not exist. If necessary you must create the folder yourself or specify a different folder that does exist.
Parser Error : Syntax error at '#' - unknown symbol
Check whether you have included one or more line-continuation characters in a #define or #include statement. Line-continuation characters cannot be used in these statements.
Error extracting section body, section is empty
Check whether your DMS file includes one or more empty Metadata or Event sections, and if necessary remove them.
Error : Miscellaneous Elan-related error
This error message originates from the UNICOM Intelligence Professional licensing system and occurs when you attempt to run multiple instances of DMS Runner on separate CPUs on a dual-processor computer. This is because of the single-user restriction that is built into the licensing. The solution is to run the jobs one after the other or to use a single-processor computer.
Error : Rowset.Read - MoveFirst, Message: Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record.
This rather confusing message indicates that no records passed the filter defined in the WHERE clause in the select query in the InputDataSource section. For example, you would get this message if the WHERE clause specifies records whose serial number is greater than 600 and the highest serial number in the input data source is actually 599.
Error : Failed to create target table: Quantum - Error opening output datasource: Quantum - DataSource Open Exception: MDM Document is Defect or Location is invalid or Document property CardSize is missing
This error occurs when you are exporting data to Quantum and typically means that no card, column, and punch definitions have been set up in the metadata. If you are setting them up in the DMS file, check the log or error message file generated by the Event section in which you set them up for error messages.
An error occurred updating a row: RDB Update failed:
Timeout expired
- OR -
IDispatch error #3121
This error might occur when you have an update query in the InputDataSource section and you are using RDB DSC 2 to connect to an RDB database or when you are transferring data to an RDB database using RDB DSC 2. You can avoid this problem by using the Favor Memory option. See the third example in
Transferring data from a relational MR database (RDB) for more information.
The process cannot access the file because it is being used by another process
This error might occur when you have called the MDM
Document.Open method in an Event section and not called the
Document.Close method to release it. You can avoid this problem by calling
Document.Close at the end of the Event section. See the
OnAfterMetaDataTransformation Event section for more information.
Other errors
When you use the UNICOM Intelligence Data Model to read or write data, the DSCs that you are using will issue a message when they encounter an error. Each DSC has specific requirements and therefore the things that are likely to cause an error will vary according to which DSCs you are using. Error messages that are issued by a DSC are prefixed by a code. However, sometimes the error message generated by the DSC is preceded by a more general message that is generated by UNICOM Intelligence Professional or the UNICOM Intelligence OLE DB Provider. For example, scroll up to the top of this topic, and look at the first error message that is shown. The second part of the error message is prefixed by “SAV”. This means that it has been generated by SPSS Statistics SAV DSC.
Transferring data using a DMS file provides general information and tips on using the DSCs provided with the UNICOM Intelligence Data Model, and links to relevant topics in
Available DSCs.
My DMS is failing with "Pre-processor error: (19): error: generic lexing error: newline in string literal"
This error occurs if there is a space after the continuation character (_) in a string definition. For example, it occurs if you accidentally put a blank space after either of the continuation characters in this statement.
SelectQuery="SELECT " + _[space]
"Respondent.Serial,Respondent.Origin,,Respondent.ID,DataCollection.Status " + _[space]
" FROM VDATA WHERE DataCollection.Status={Completed}"
See also