After you run the form transformation tool, the pages that the tool created might not contain functionality that is equivalent to the original forms and might not display correctly in the user interface. You can use the information captured in the log file to help you to diagnose problems. By inspecting the log file, you can identify issues before you deploy the new page objects in the RoleTailored client. To resolve these issues, you must modify the input to the form transformation tool and run the tool again.

This topic describes the information that is in the transformation log files. The same information is captured in the following log files:

For detailed steps about re-running the transformation tool, see How to: Retransform Forms.

Log File Message Types

The following table describes each of the message types in the log file.

Message type Description

ChangeCodeManually

Transformation of a specified control or property could not be completed. Additional, typically manual, change or input is required to address the exception that is associated with this message.

CheckInputFile

There is an inconsistency in an input file.

CodeCannotBeTransformed

There are issues with code transformation.

Error

Any error. Typically, the transformation tool cannot recover after such an error.

GeneralInformation

Any information. Typically, no action is required.

IgnoreForms

Specified form was excluded from the transformation and no matching page was created.

IgnoreWarning

Verify that there is not an issue, and then ignore this warning.

InputInformation

Information about input files.

PossibleCompilationProblem

A property or method may not be supported in the RoleTailored client and may not compile.

RemoveControls

Specified control on the form was not mapped to a matching control on a page.

ValidateManually

Specified control or code has been changed during transformation. The change requires manual validation.

Warning

Any warning. Typically, warnings relate to file input/output operations.

Examples

The following examples show code examples from Transformation.log files of each type of log message.

ChangeCodeManually

In this example, the form transformation tool has identified a label on form 5077 that is instructional text but is not marked as such. To resolve this message, you must mark the label as an instruction. For more information, see How to: Mark Labels on Dialogs as Instructions.

  CopyCode imageCopy Code
ChangeCodeManually: Form 5077: Parentless label 14 ("ENU=When you click 
Next, if your interaction template is set up to:") was found. 
If this label should be treated as Instructional Text, 
please mark it as InstructionalTextML in file:///C:/transformation/NDBC/MoveElements.xml

CheckInputFile

In this example, the action with ID 20 on form 1004 exists in the Forms.xml file but does not exist in the TransformPages.xml input file.

  CopyCode imageCopy Code
CheckInputFile: Form 1004: The ID 20 from the transformation input file, do not exist in the input xml file.

In this example, the DeleteElements.xml file is not found at the location that is specified in the Microsoft.Dynamics.Nav.Tools.FormTransformation.exe.config file.

  CopyCode imageCopy Code
CheckInputFile: Could not load .\DeleteElements.xml

Error

In this example, the form transformation tool cannot open the source Forms.xml file.

  CopyCode imageCopy Code
Error: Could not load .\Forms.xml
Error: Transformation aborted

In this example, there is an error with form 591.

  CopyCode imageCopy Code
Error: Form 591: Manage Option Buttons.....
Error: Form 591: startIndex must be less than length of string.

General Information

This message type is for internal use only. No action is required.

IgnoreForms

In this example, form 64 is ignored. This form was listed in the IgnorePages.xml input file. In this example, there was an error in the logging and the reason for the error is not given.

  CopyCode imageCopy Code
IgnoreForms: Form 64: Ignored, due to a {0}

IgnoreWarning

In this example, the label, whose ID is 6 on form 342, is ignored.

  CopyCode imageCopy Code
IgnoreWarning: Form 342: Label 6. Property Name will be ignored.

InputInformation

  CopyCode imageCopy Code
------------ Transformation started at 14-07-2008 15:05:30 ------------ 
Forms file: .\Forms.xml
Pages file: .\Pages.xml
InsertElements file: .\TransformPages.xml
IgnoreForms file: .\IgnorePages.xml
DeleteElements file: .\DeleteElements.xml
MoveElements file: .\MoveElements.xml
RenumberPages file: .\MovePages.xml
CodeRules file: .\coderules.txt
-----------------------------------------------------------------------

PossibleCompilationProblem

In this example, EDITABLE is not supported on the RoleTailored client and is not included in CodeRules.txt file:

  CopyCode imageCopy Code
Property or method EDITABLE may not be supported in the RoleTailored client. The following code may not be compiled:
BEGIN
  CurrPage.Field.EDITABLE(NOT("Unit Cost (LCY)" = 0));
END;
Analyze your code and add a new rule to the CodeRules.txt file if necessary.:

RemoveControls

In this example, the log file specifies that several controls were removed from form 317.

  CopyCode imageCopy Code
RemoveControls: Form 317: Buttons: OK/Cancel, Yes/No, LookupOK, LookupCancel, and Close. CommandButton control <30> will be removed.

ValidateManually

  CopyCode imageCopy Code
ValidateManually: Form 151: TextBox as Label found (by X/Y position). 
TextBox ID 14 recognized as Label. 
Source Expression (FORMAT (STRSUBSTNO(Text000,FORMAT(CurrentDate)))) moved to 
CaptionClass of control ID 15.

ValidateManually: Form 99000833: CaptionML value (ENU=This Sales Line is currently planned. 
Your changes will not cause any replanning. Do you still want to record the changes?) 
for control id 2 was moved to variable Text000@1008. 
This variable was assigned to CaptionClass property.

Warning

  CopyCode imageCopy Code
Warning: Form 317: Control with property password has been transformed 
into a masked text extended data type. This is not a secure solution. 
If this control is going to be used for entering passwords or other 
secure data you have to develop a secure solution to support this.

See Also