Validate Commands

Validate Commands are used to send out a request to the validate service to have some 4GL logic validated or to check for the physical presence of a member Object. A response will be send back. Behind the scenes, the validate service will communicate with the Repository service to retrieve and store the data involved.

Validate Commands have the following format:

<ProLinga>
  <Validate Version="1.0" >
    <Command Name="command" Mode="Request/Response" SessionId="unique_id">
      <Object Application="appn" Type="type" Name="name"/>
      . . .
      . . .
    </Command>
  </Validate>
</ProLinga>

The following Validate Commands are available:

  • TransformOnly

  • Validate

  • Ping

TransformOnly

This setting only applies to Logic and it skips the validation step after transforming the 4GL logic into an XML document. The transformed document will get stored in the repository as type "RunControl".

Example TransformOnly Request:

<ProLinga>
  <Validate Version=”1.0” >
    <Command Name=”TransformOnly” Mode=”Request”>
      <Object Application=”Advance” Type="Logic" Name=”Main”/>
    </Command>
  </Validate>
</ProLinga>

Example TransformOnly Response:

<ProLinga>
  <Validate Version=”1.0” >
    <Command Name=”TransformOnly” Mode=”Response” Status="OK">
      <Object Application=”Advance” Type="Logic" Name=”Main”/>
    </Command>
  </Validate> 
</ProLinga>

Validate

Validation is implemented for Constant, Index, Logic, Record, Table, Variable and VariableGroup. Other objects will simply be ignored.

Example Validate Request:

<ProLinga>
  <Validate Version=”1.0” >
    <Command Name=”Validate” Mode=”Request”>
      <Object Application=”Advance” Type="Constant" Name=”EOF”/>
    </Command>
  </Validate>
</ProLinga>

Example Validate Response:

<ProLinga>
  <Validate Version=”1.0” >
    <Command Name=”Validate” Mode=”Response” Status="OK">
      <Object Application=”Advance” Type="Constant" Name=”EOF”/>
    </Command>
  </Validate> 
</ProLinga>

Ping

The ping command can be used to test if a validate host is on-line and responding to requests.

Example Ping Request:

<ProLinga>
  <Validate Version="1.0">
    <Command Name="Ping" Mode="Request"/>
  </Validate>
</ProLinga>

Example Ping Response:

<ProLinga>
  <Validate Version="1.0">
    <Command Name="Ping" Mode="Response" Status="Ok"/>
  </Validate>
</ProLinga>

Additional error information from the underlying SOAP layer will be presented as well in the response document in case of an error.