| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- DEF VAR hBuffer AS HANDLE NO-UNDO.
- DEF VAR hQuery AS HANDLE NO-UNDO.
- DEF VAR cName AS CHAR NO-UNDO.
- DEF VAR cWhere AS CHAR NO-UNDO.
- DEF VAR cLabel AS CHAR NO-UNDO.
- DEF VAR cString AS CHAR NO-UNDO.
- DEF VAR ij AS INT NO-UNDO.
- DEF VAR iRet AS INT NO-UNDO.
- DEF VAR cDelim AS CHAR NO-UNDO INIT '£'.
- /* DO WITH FRAME {&FRAME-NAME}: */
- /* APPLY 'CTRL-END' TO BROWSE {&BROWSE-NAME}. */
- /* */
- /* hBuffer = DYNAMIC-FUNCTION('getQueryBuffer':U IN hDaten) NO-ERROR. */
- /* IF NOT VALID-HANDLE ( hBuffer ) THEN RETURN. */
- /* */
- /* cName = SESSION:TEMP-DIR */
- /* + ENTRY(1, THIS-PROCEDURE:FILE-NAME, '.') */
- /* + '.csv'. */
- /* */
- /* cWhere = DYNAMIC-FUNCTION('getQueryWhere':U IN hDaten) NO-ERROR. */
- /* */
- /* CREATE QUERY hQuery. */
- /* hQuery:SET-BUFFERS(hBuffer). */
- /* hQuery:QUERY-PREPARE('FOR EACH rowObject NO-LOCK'). */
- /* hQuery:QUERY-OPEN(). */
- /* */
- /* OUTPUT TO VALUE(cName). */
- /* SESSION:SET-WAIT-STATE('GENERAL'). */
- /* cString = ''. */
- /* DO ij = 1 TO hBuffer:NUM-FIELDS: */
- /* IF hBuffer:BUFFER-FIELD(ij):NAME BEGINS 'row' THEN NEXT. */
- /* cLabel = hBuffer:BUFFER-FIELD(ij):LABEL. */
- /* IF cLabel = ? OR */
- /* cLabel = '' THEN cLabel = hBuffer:BUFFER-FIELD(ij):NAME. */
- /* cString = cString + cDelim + cLabel. */
- /* END. */
- /* IF cString <> '' THEN cString = SUBSTRING(cString,02). */
- /* cString = REPLACE(cString, ';', ':'). */
- /* cString = REPLACE(cString, cDelim, ';'). */
- /* PUT CONTROL cString CHR(10). */
- /* */
- /* hQuery:GET-FIRST(NO-LOCK). */
- /* DO WHILE NOT hQuery:QUERY-OFF-END: */
- /* cString = ''. */
- /* DO ij = 1 TO hBuffer:NUM-FIELDS: */
- /* IF hBuffer:BUFFER-FIELD(ij):NAME BEGINS 'row' THEN NEXT. */
- /* cLabel = hBuffer:BUFFER-FIELD(ij):BUFFER-VALUE(0). */
- /* IF cLabel = ? THEN cLabel = ''. */
- /* IF hBuffer:BUFFER-FIELD(ij):DATA-TYPE BEGINS 'CHAR' THEN DO:*/
- /* cLabel = REPLACE(cLabel, CHR(10), ' '). */
- /* END. */
- /* cString = cString + cDelim + cLabel. */
- /* END. */
- /* IF cString <> '' THEN cString = SUBSTRING(cString,02). */
- /* cString = REPLACE(cString, ';', ':'). */
- /* cString = REPLACE(cString, cDelim, ';'). */
- /* PUT CONTROL cString CHR(10). */
- /* hQuery:GET-NEXT(NO-LOCK). */
- /* END. */
- /* OUTPUT CLOSE. */
- /* */
- /* hQuery:QUERY-CLOSE(). */
- /* DELETE OBJECT hQuery. */
- /* */
- /* SESSION:SET-WAIT-STATE(''). */
- /* END. */
- /* */
- /* RUN ShellExecuteA ( INPUT 0, */
- /* INPUT 'open', */
- /* INPUT 'Excel.exe', */
- /* INPUT cName, */
- /* INPUT '', */
- /* INPUT 1, */
- /* OUTPUT iRet ). */
- RUN exportData IN hDaten ( 'Excel', '', FALSE, TRUE, 10000 ).
|