| Quintiq file version 2.0 | 
| #parent: #root | 
| Method OnSuccessExchangeDataByChunk (NamedValueTree nvt_i) | 
| { | 
|   Description: 'Handle cases of success for sending ExchangeDataByChunk.' | 
|   TextBody: | 
|   [* | 
|     // Jacky CHAN Apr-26-2016 (created) | 
|     // retrieve kind | 
|     kind := LibDEF_DataAccessor::GetHeaderPropertyAsString( nvt_i, LibDEF_DataAccessor::HEADER_KIND() ); | 
|      | 
|     if( LibDEF_DataAccessor::HasChildNamed( nvt_i, nvt_i.Root(), LibDEF_DataAccessor::HANDLE_CONFIGURATION() ) ) | 
|     { | 
|       // Handle configuration message | 
|     } | 
|     else if( LibDEF_DataAccessor::HasChildNamed( nvt_i, nvt_i.Root(), LibDEF_DataAccessor::HANDLE_METADATA() ) ) | 
|     { | 
|       // Handle metadata message | 
|     } | 
|     else if( LibDEF_DataAccessor::HasChildNamed( nvt_i, nvt_i.Root(), LibDEF_DataAccessor::HANDLE_DATA() ) ) | 
|     { | 
|       // Handle set-data message | 
|       // retrieve type | 
|       type := LibDEF_DataAccessor::GetDataHeaderPropertyAsString( nvt_i, LibDEF_DataAccessor::HEADER_TYPE() ); | 
|        | 
|       if( ( kind = LibDEF_DataAccessor::KIND_SUCCESS() and type = LibDEF_DataAccessor::TYPE_DATA_GETSETCHUNKED() ) or | 
|           ( kind = LibDEF_DataAccessor::KIND_REQUEST() and type = LibDEF_DataAccessor::TYPE_DATA_SETCREATEDCHUNKED() ) or | 
|           ( kind = LibDEF_DataAccessor::KIND_REQUEST() and type = LibDEF_DataAccessor::TYPE_DATA_SETUPDATEDCHUNKED() ) ) | 
|       { | 
|         // both of these can be processed by the same handler | 
|         dataTransferGUID := LibDEF_DataAccessor::GetDataHeaderPropertyAsString( nvt_i, LibDEF_DataAccessor::HEADER_DATATRANSFERGUID() ); | 
|         dataTransfer := select( this, QueueOutbox.DataTransfer, dt, dt.GUID() = dataTransferGUID ); | 
|         dataTransfer.ExternalSystem().SendDataByChunkOnSuccess( nvt_i, dataTransfer, kind, type ); // we can get the target system from the datatransfer object itself | 
|       } | 
|     } | 
|   *] | 
| } |