RenameDokumente.p 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217
  1. &ANALYZE-SUSPEND _VERSION-NUMBER AB_v10r12
  2. &ANALYZE-RESUME
  3. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS Procedure
  4. /*------------------------------------------------------------------------
  5. File :
  6. Purpose :
  7. Syntax :
  8. Description :
  9. Author(s) :
  10. Created :
  11. Notes :
  12. ----------------------------------------------------------------------*/
  13. /* This .W file was created with the Progress AppBuilder. */
  14. /*----------------------------------------------------------------------*/
  15. /* *************************** Definitions ************************** */
  16. DEF VAR cFirma AS CHAR INIT '1000' NO-UNDO.
  17. DEF VAR cPDFDocument AS CHAR NO-UNDO.
  18. DEF VAR coldDocument AS CHAR NO-UNDO.
  19. /* _UIB-CODE-BLOCK-END */
  20. &ANALYZE-RESUME
  21. &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
  22. /* ******************** Preprocessor Definitions ******************** */
  23. &Scoped-define PROCEDURE-TYPE Procedure
  24. &Scoped-define DB-AWARE no
  25. /* _UIB-PREPROCESSOR-BLOCK-END */
  26. &ANALYZE-RESUME
  27. /* ************************ Function Prototypes ********************** */
  28. &IF DEFINED(EXCLUDE-getPDFDocument) = 0 &THEN
  29. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION-FORWARD getPDFDocument Procedure
  30. FUNCTION getPDFDocument RETURNS CHARACTER
  31. ( ipAufnr AS INT, ipDokArt AS CHAR ) FORWARD.
  32. /* _UIB-CODE-BLOCK-END */
  33. &ANALYZE-RESUME
  34. &ENDIF
  35. /* *********************** Procedure Settings ************************ */
  36. &ANALYZE-SUSPEND _PROCEDURE-SETTINGS
  37. /* Settings for THIS-PROCEDURE
  38. Type: Procedure
  39. Allow:
  40. Frames: 0
  41. Add Fields to: Neither
  42. Other Settings: CODE-ONLY COMPILE
  43. */
  44. &ANALYZE-RESUME _END-PROCEDURE-SETTINGS
  45. /* ************************* Create Window ************************** */
  46. &ANALYZE-SUSPEND _CREATE-WINDOW
  47. /* DESIGN Window definition (used by the UIB)
  48. CREATE WINDOW Procedure ASSIGN
  49. HEIGHT = 15
  50. WIDTH = 60.
  51. /* END WINDOW DEFINITION */
  52. */
  53. &ANALYZE-RESUME
  54. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK Procedure
  55. /* *************************** Main Block *************************** */
  56. DEF VAR cDokArt AS CHAR NO-UNDO.
  57. DEF VAR cPath AS CHAR NO-UNDO.
  58. DEF VAR ii AS INT NO-UNDO.
  59. FOR EACH Savko NO-LOCK
  60. WHERE Savko.Fak_Datum >= 01/01/2015
  61. BREAK BY Savko.Faknr:
  62. IF NOT FIRST-OF (Savko.Faknr) THEN NEXT.
  63. CASE Savko.Fak_Art:
  64. WHEN 11 THEN cDokArt = 'LieferFak'.
  65. WHEN 21 THEN cDokArt = 'Faktura'.
  66. WHEN 31 THEN cDokArt = 'SammFak'.
  67. WHEN 32 THEN cDokArt = 'SammFak'.
  68. WHEN 33 THEN cDokArt = 'SammFak'.
  69. END CASE.
  70. cPDFDocument = SUBSTITUTE('&1-&2_&3.pdf',
  71. STRING(Savko.Fak_Knr,'999999'),
  72. STRING(Savko.Faknr ,'9999999'),
  73. cDokArt).
  74. cOldDocument = DYNAMIC-FUNCTION('getPDFDocument':U, Savko.Aufnr, cDokArt ).
  75. IF cOldDocument = ? OR
  76. cOldDocument = '' THEN NEXT.
  77. ii = R-INDEX(cOldDocument, '\').
  78. IF ii = 0 THEN ii = R-INDEX(cOldDocument, '/').
  79. cPDFDocument = SUBSTRING(cOldDocument,01,ii) + cPDFDocument.
  80. IF cPDFDocument = cOldDocument THEN NEXT.
  81. OS-RENAME VALUE(cOldDocument) VALUE(cPDFDocument).
  82. END.
  83. /* _UIB-CODE-BLOCK-END */
  84. &ANALYZE-RESUME
  85. /* ************************ Function Implementations ***************** */
  86. &IF DEFINED(EXCLUDE-getPDFDocument) = 0 &THEN
  87. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION getPDFDocument Procedure
  88. FUNCTION getPDFDocument RETURNS CHARACTER
  89. ( ipAufnr AS INT, ipDokArt AS CHAR ) :
  90. /*------------------------------------------------------------------------------
  91. Purpose:
  92. Notes:
  93. ------------------------------------------------------------------------------*/
  94. DEF VAR cDokument AS CHAR NO-UNDO.
  95. DEF BUFFER bSavko FOR Savko.
  96. FIND bSavko NO-LOCK
  97. WHERE bSavko.Firma = cFirma
  98. AND bSavko.Aufnr = ipAufnr NO-ERROR.
  99. IF NOT AVAILABLE bSavko THEN RETURN ''.
  100. cDokument = SUBSTITUTE('Rechnungen/&1-&2_&3.pdf',
  101. STRING(bSavko.Knr ,'999999'),
  102. STRING(bSavko.Faknr,'9999999'),
  103. ipDokArt).
  104. FILE-INFO:FILE-NAME = cDokument.
  105. IF FILE-INFO:FULL-PATHNAME <> ? AND
  106. FILE-INFO:FULL-PATHNAME <> '' THEN RETURN FILE-INFO:FULL-PATHNAME.
  107. cDokument = SUBSTITUTE('Rechnungen/&1-&2_&3.pdf',
  108. STRING(bSavko.Fak_Knr,'999999'),
  109. STRING(bSavko.Faknr ,'9999999'),
  110. ipDokArt).
  111. FILE-INFO:FILE-NAME = cDokument.
  112. IF FILE-INFO:FULL-PATHNAME <> ? AND
  113. FILE-INFO:FULL-PATHNAME <> '' THEN RETURN FILE-INFO:FULL-PATHNAME.
  114. cDokument = SUBSTITUTE('Rechnungen/&1-&2_&3.pdf',
  115. STRING(bSavko.Knr ,'999999'),
  116. STRING(bSavko.Aufnr,'9999999'),
  117. ipDokArt).
  118. FILE-INFO:FILE-NAME = cDokument.
  119. IF FILE-INFO:FULL-PATHNAME <> ? AND
  120. FILE-INFO:FULL-PATHNAME <> '' THEN RETURN FILE-INFO:FULL-PATHNAME.
  121. cDokument = SUBSTITUTE('Rechnungen/&1-&2_&3.pdf',
  122. STRING(bSavko.Fak_Knr,'999999'),
  123. STRING(bSavko.Aufnr ,'9999999'),
  124. ipDokArt).
  125. FILE-INFO:FILE-NAME = cDokument.
  126. IF FILE-INFO:FULL-PATHNAME <> ? AND
  127. FILE-INFO:FULL-PATHNAME <> '' THEN RETURN FILE-INFO:FULL-PATHNAME.
  128. cDokument = SUBSTITUTE('Rechnungen/&1-&2_&3.pdf',
  129. STRING(bSavko.Knr ,'999999'),
  130. STRING(bSavko.Faknr,'999999'),
  131. ipDokArt).
  132. FILE-INFO:FILE-NAME = cDokument.
  133. IF FILE-INFO:FULL-PATHNAME <> ? AND
  134. FILE-INFO:FULL-PATHNAME <> '' THEN RETURN FILE-INFO:FULL-PATHNAME.
  135. cDokument = SUBSTITUTE('Rechnungen/&1-&2_&3.pdf',
  136. STRING(bSavko.Fak_Knr,'999999'),
  137. STRING(bSavko.Faknr ,'999999'),
  138. ipDokArt).
  139. FILE-INFO:FILE-NAME = cDokument.
  140. IF FILE-INFO:FULL-PATHNAME <> ? AND
  141. FILE-INFO:FULL-PATHNAME <> '' THEN RETURN FILE-INFO:FULL-PATHNAME.
  142. cDokument = SUBSTITUTE('Rechnungen/&1-&2_&3.pdf',
  143. STRING(bSavko.Knr ,'999999'),
  144. STRING(bSavko.Aufnr,'999999'),
  145. ipDokArt).
  146. FILE-INFO:FILE-NAME = cDokument.
  147. IF FILE-INFO:FULL-PATHNAME <> ? AND
  148. FILE-INFO:FULL-PATHNAME <> '' THEN RETURN FILE-INFO:FULL-PATHNAME.
  149. cDokument = SUBSTITUTE('Rechnungen/&1-&2_&3.pdf',
  150. STRING(bSavko.Fak_Knr,'999999'),
  151. STRING(bSavko.Aufnr ,'999999'),
  152. ipDokArt).
  153. FILE-INFO:FILE-NAME = cDokument.
  154. IF FILE-INFO:FULL-PATHNAME <> ? AND
  155. FILE-INFO:FULL-PATHNAME <> '' THEN RETURN FILE-INFO:FULL-PATHNAME.
  156. RETURN "". /* Function return value. */
  157. END FUNCTION.
  158. /* _UIB-CODE-BLOCK-END */
  159. &ANALYZE-RESUME
  160. &ENDIF