| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 |
- /*------------------------------------------------------------------------
- File : FindLabelsFromObjects.p
- Purpose :
- Syntax :
- Description :
- Author(s) : walter.riechsteiner
- Created : Wed Sep 01 15:50:05 CEST 2021
- Notes :
- ----------------------------------------------------------------------*/
- /* *************************** Definitions ************************** */
- /* ******************** Preprocessor Definitions ******************** */
- /* *************************** Main Block *************************** */
- DEFINE VARIABLE i AS INTEGER NO-UNDO.
- DEFINE VARIABLE ix AS INTEGER NO-UNDO.
- DEFINE VARIABLE iMax AS INTEGER NO-UNDO.
- DEFINE VARIABLE lRetVal AS LOG NO-UNDO.
- DEFINE VARIABLE cString AS CHARACTER NO-UNDO.
- DEFINE VARIABLE cFeld AS CHARACTER NO-UNDO.
- DEFINE VARIABLE cDateiName AS CHARACTER NO-UNDO.
- DEFINE VARIABLE hFeld AS HANDLE NO-UNDO.
- DEFINE VARIABLE iExtent AS INTEGER NO-UNDO.
- DEFINE TEMP-TABLE tArtLief LIKE ArtLief.
- DEFINE VARIABLE htArtLief AS HANDLE NO-UNDO.
- htArtLief = TEMP-TABLE tArtLief:DEFAULT-BUFFER-HANDLE.
- cDateiName = 'exports\ArtikelLieferantenDetails.csv'.
- iMax = htArtLief:NUM-FIELDS.
- FOR EACH ArtLief NO-LOCK
- WHERE ArtLief.Firma = '1000'
- :
- CREATE tArtLief.
- BUFFER-COPY ArtLief
- TO tArtLief.
- END.
- OUTPUT TO VALUE(cDateiName) NO-MAP NO-CONVERT.
- DO i = 1 TO iMax:
- IF i > 1 THEN PUT CONTROL ';'.
- hFeld = htArtLief:BUFFER-FIELD (i).
- iExtent = hFeld:EXTENT.
- IF iExtent = 0 THEN
- DO:
- PUT CONTROL htArtLief:BUFFER-FIELD (i):LABEL.
- NEXT.
- END.
- DO ix = 1 TO iExtent:
- cString = hFeld:LABEL + '-' + STRING(ix).
- PUT CONTROL cString.
- IF ix < iExtent THEN PUT CONTROL ';'.
- END.
- END.
- PUT CONTROL CHR(10).
-
- FOR EACH tArtLief NO-LOCK:
-
- DO i = 1 TO iMax:
- IF i > 1 THEN PUT CONTROL ';'.
- hFeld = htArtLief:BUFFER-FIELD (i).
- iExtent = hFeld:EXTENT.
- IF iExtent = 0 THEN
- DO:
- cString = hFeld:BUFFER-VALUE(0).
- cString = REPLACE(cString, CHR(13), '' ).
- cString = REPLACE(cString, CHR(10), '%NL%' ).
- PUT CONTROL REPLACE(cString, ';', ':').
- NEXT.
- END.
- DO ix = 1 TO iExtent:
- cString = hFeld:BUFFER-VALUE(ix).
- cString = REPLACE(cString, CHR(13), '' ).
- cString = REPLACE(cString, CHR(10), '%NL%' ).
- PUT CONTROL REPLACE(cString, ';', ':').
- IF ix < iExtent THEN PUT CONTROL ';'.
- END.
- END.
- PUT CONTROL CHR(10).
- END.
- OUTPUT CLOSE.
- /*PUT CONTROL MESSAGE i '->' '-' EXTENT (oProperties) '-' oProperties[i]:Name '-' oProperties[i]:DataType '-' oProperties[i]:ToString()*/
- /* VIEW-AS ALERT-BOX. */
- /*DEF VAR theValue AS Progress.Lang.Object NO-UNDO. */
- /* */
- /*theValue = DYNAMIC-PROPERTY(oInvoice, "Amount"). */
- /* */
- /*IF theValue:WHATS-THE-TYPE = "decimal" THEN */
- /* RETURN STRING(theValue, ">>>>>9.99"). */
- /*ELSE */
- /* RETURN TRIM(theValue). // It is a character field*/
|