| Quintiq file version 2.0 | 
| #parent: #root | 
| StaticMethod FormatCSV ( | 
|   String string | 
| ) as String | 
| { | 
|   Description: | 
|   [* | 
|     Format the result to CSV format | 
|     Maintain by R&D | 
|   *] | 
|   TextBody: | 
|   [* | 
|     // jasperb Mar-7-2012 (created) | 
|      | 
|     result := string; | 
|      | 
|     newlinestring := BenchmarkUtilities::NewLineString(); | 
|     delimiter := BenchmarkUtilities::Delimiter(); | 
|      | 
|     if( string.FindString( delimiter, 0 ) > 0 ) | 
|     { | 
|       error( 'newlinestring', delimiter, 'already used' ); | 
|     } | 
|      | 
|     if( string.FindString( newlinestring, 0 ) > 0 ) | 
|     { | 
|       error( 'newlinestring', newlinestring, 'already used' ); | 
|     } | 
|      | 
|     quoteclosed := true; | 
|      | 
|     for( position := 0; position < result.Length() ; position++ ) | 
|     { | 
|       substring := result.SubString( position, 1 ); | 
|      | 
|       if( substring = "'" ) | 
|       { | 
|         quoteclosed := not quoteclosed; | 
|       } | 
|       else if( quoteclosed and substring = "," ) | 
|       { | 
|         result := result.Replace( position, 1, delimiter ); | 
|       } | 
|     } | 
|      | 
|     return result.ReplaceAll( String::NewLine(), newlinestring ); | 
|   *] | 
| } |