CreateViperGebindeTabelle_1.p 9.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202
  1. DEF VAR lStart AS LOG INIT FALSE NO-UNDO.
  2. DEF VAR lFound AS LOG INIT FALSE NO-UNDO.
  3. DEF VAR iObj AS INT NO-UNDO.
  4. DEF VAR ii AS INT NO-UNDO.
  5. DEF VAR i1 AS INT NO-UNDO.
  6. DEF VAR i2 AS INT NO-UNDO.
  7. DEF VAR iX AS INT NO-UNDO.
  8. DEF VAR iY AS INT INIT 1750 NO-UNDO.
  9. DEF VAR iW AS INT NO-UNDO.
  10. DEF VAR iH AS INT NO-UNDO.
  11. DEF VAR iRectDick AS INT NO-UNDO.
  12. DEF VAR iRectX AS INT NO-UNDO.
  13. DEF VAR iRectY AS INT NO-UNDO.
  14. DEF VAR iRectBreit AS INT NO-UNDO.
  15. DEF VAR iRectHoch AS INT NO-UNDO.
  16. DEF VAR iStart AS INT EXTENT 10 NO-UNDO
  17. INIT [160,0,0,0,0,0,960,0,0,0].
  18. DEF VAR iBreit AS INT EXTENT 10 NO-UNDO
  19. INIT [130,90,150,120,120,130,130,460,150,120].
  20. DEF VAR iHoch AS INT EXTENT 10 NO-UNDO
  21. INIT [45,45,45,45,45,45,45,45,45,45].
  22. DEF VAR cText01 AS CHAR EXTENT 20 NO-UNDO
  23. INIT ["","","","","","","","","","","","","","","","","","","",""].
  24. DEF VAR cText02 AS CHAR EXTENT 20 NO-UNDO
  25. INIT ["Har.","Har.","Har.","Har.","Har.","Har.","Har.","Har.","Har."~
  26. ,"Har.","Har.","Har.","Har.","Har.","Har.","Har.","","","",""].
  27. DEF VAR cText03 AS CHAR EXTENT 20 NO-UNDO
  28. INIT ["6 FL.","10 Fl.","12 Fl.","15 Fl.","16 Fl.","20 Fl.","24 Fl."~
  29. ,"15 Fl.","20 Fl.","10 Fl.","15 Fl.","20 Fl.","24 Fl.","27 Fl."~
  30. ,"28 Fl.","30 Fl.","","","",""].
  31. DEF VAR cText04 AS CHAR EXTENT 20 NO-UNDO
  32. INIT ["0.50","0.50","0.50","0.50","0.50","0.50","0.50","1.00","1.00~
  33. ","0.30","0.30","0.30","0.30","0.30","0.30","0.30","","","",""].
  34. DEF VAR cText05 AS CHAR EXTENT 20 NO-UNDO
  35. INIT ["8.00","10.00","11.00","12.50","13.00","15.00","17.00","20.00","25.00~
  36. ","8.00","9.50","11.00","12.20","13.10","13.40","14.00","","","",""].
  37. DEF VAR cText06 AS CHAR EXTENT 20 NO-UNDO
  38. INIT ["","","","","","","","","","","","","","","","","","","",""].
  39. DEF VAR cText07 AS CHAR EXTENT 20 NO-UNDO
  40. INIT ["","","","","","","","","","","","","","","","","","","",""].
  41. DEF VAR cText08 AS CHAR EXTENT 20 NO-UNDO
  42. INIT ["Flaschen","Flaschen","Flaschen","Harasse","Wein Harasse","Gallone","Wein Container~
  43. ","Container / Fass","Propangas","CO2 / Kohlensäure","Partyfass","Cool Keg","EHG Blau~
  44. ","Glasbehälter Dunkelgrau","Glasbehälter Gross","Paletten retour","Paletten geliefert","","",""].
  45. DEF VAR cText09 AS CHAR EXTENT 20 NO-UNDO
  46. INIT ["0.30","0.50","1.00","5.00","0.00","10.00","50.00","50.00","65.00","100.00","100.00","150.00","50.00","","","12.00","12.00","","",""].
  47. DEF VAR cText10 AS CHAR EXTENT 20 NO-UNDO
  48. INIT ["","","","","","","","","","","","","","","","","","","",""].
  49. DEF VAR cText AS CHAR EXTENT 20 NO-UNDO.
  50. DEF TEMP-TABLE tTextObj
  51. FIELD iObj AS INT
  52. FIELD cBeginObject AS CHAR
  53. FIELD cName AS CHAR
  54. FIELD cX-mm AS CHAR
  55. FIELD cY-mm AS CHAR
  56. FIELD cWidth-mm AS CHAR
  57. FIELD cHeight-mm AS CHAR
  58. FIELD cTextValue AS CHAR
  59. FIELD cAutowrap AS CHAR
  60. FIELD cAutoResize AS CHAR
  61. FIELD cFGColour AS CHAR
  62. FIELD cBGColour AS CHAR
  63. FIELD cFontNo AS CHAR
  64. FIELD czOrder AS CHAR
  65. FIELD cKeeptext AS CHAR
  66. FIELD cEndObject AS CHAR
  67. FIELD cAlignment AS CHAR
  68. FIELD iX-mm AS INT
  69. FIELD iY-mm AS INT
  70. .
  71. DO ii = 1 TO 10:
  72. IF ii > 1 THEN DO:
  73. IF iStart[ii] = 0 THEN iStart[ii] = iStart[ii - 1] + iBreit[ii - 1].
  74. END.
  75. END.
  76. iObj = 0.
  77. DO ii = 1 TO 17:
  78. DO i1 = 1 TO 10:
  79. iObj = iObj + 1.
  80. CREATE tTextObj.
  81. ASSIGN tTextObj.iObj = ii
  82. ttextObj.cBeginObject = 'BeginObject=Text'
  83. tTextObj.cAutoWrap = 'AutoWrap=false'
  84. tTextObj.cAutoResize = 'AutoResize=no'
  85. tTextObj.cBgColour = (IF ii MOD 2 = 0 THEN 'BgColour=225,225,225' ELSE 'BgColour=255,255,255')
  86. tTextObj.cFontNo = 'FontNo=8'
  87. tTextObj.czOrder = 'zOrder=0'
  88. tTextObj.cKeeptext = 'Keeptext=yes'
  89. tTextObj.cEndObject = 'EndObject=Text'.
  90. CASE i1:
  91. WHEN 01 THEN DO:
  92. DO i2 = 1 TO 20: cText[i2] = cText01[i2]. END.
  93. END.
  94. WHEN 02 THEN DO:
  95. DO i2 = 1 TO 20: cText[i2] = cText02[i2]. END.
  96. END.
  97. WHEN 03 THEN DO:
  98. DO i2 = 1 TO 20: cText[i2] = cText03[i2]. END.
  99. END.
  100. WHEN 04 THEN DO:
  101. DO i2 = 1 TO 20: cText[i2] = cText04[i2]. END.
  102. END.
  103. WHEN 05 THEN DO:
  104. DO i2 = 1 TO 20: cText[i2] = cText05[i2]. END.
  105. END.
  106. WHEN 06 THEN DO:
  107. DO i2 = 1 TO 20: cText[i2] = cText06[i2]. END.
  108. END.
  109. WHEN 07 THEN DO:
  110. DO i2 = 1 TO 20: cText[i2] = cText07[i2]. END.
  111. END.
  112. WHEN 08 THEN DO:
  113. DO i2 = 1 TO 20: cText[i2] = cText08[i2]. END.
  114. END.
  115. WHEN 09 THEN DO:
  116. DO i2 = 1 TO 20: cText[i2] = cText09[i2]. END.
  117. END.
  118. WHEN 10 THEN DO:
  119. DO i2 = 1 TO 20: cText[i2] = cText10[i2]. END.
  120. END.
  121. END.
  122. ASSIGN tTextObj.cName = SUBSTITUTE('Text_&1' , STRING(iObj,'999'))
  123. tTextObj.cFgColour = (IF cText[ii] = '' THEN REPLACE(tTextObj.cBgColour, 'Bg', 'Fg') ELSE 'FgColour=0,0,0')
  124. tTextObj.cX-mm = SUBSTITUTE('X-mm=&1' , STRING(iStart[i1] + 0,'9999'))
  125. tTextObj.cY-mm = SUBSTITUTE('Y-mm=&1' , STRING(iY + 1 ,'9999'))
  126. tTextObj.cWidth-mm = SUBSTITUTE('Width-mm=&1' , STRING(iBreit[i1] - 1,'999'))
  127. tTextObj.cHeight-mm = SUBSTITUTE('Height-mm=&1' , STRING(iHoch [i1] - 1,'999'))
  128. tTextObj.cTextValue = (IF cText[ii] = '' THEN SUBSTITUTE('TextValue=Text_&1', STRING(iObj,'999')) ELSE SUBSTITUTE('TextValue=&1', cText[ii])).
  129. CASE i1:
  130. WHEN 01 OR
  131. WHEN 02 OR
  132. WHEN 06 OR
  133. WHEN 07 OR
  134. WHEN 08 OR
  135. WHEN 10 THEN tTextObj.cAlignment = 'Alignment=left'.
  136. OTHERWISE tTextObj.cAlignment = 'Alignment=right'.
  137. END CASE.
  138. END.
  139. iY = iY + iHoch[01].
  140. END.
  141. OUTPUT TO 'N:\20_Temp\Gebinde.vfr' NO-MAP NO-CONVERT.
  142. FOR EACH tTextObj
  143. BY tTextObj.iObj:
  144. PUT CONTROL ' ' tTextObj.cBeginObject CHR(10)
  145. ' ' tTextObj.cName CHR(10)
  146. ' ' tTextObj.cX-mm CHR(10)
  147. ' ' tTextObj.cY-mm CHR(10)
  148. ' ' tTextObj.cWidth-mm CHR(10)
  149. ' ' tTextObj.cHeight-mm CHR(10)
  150. ' ' tTextObj.cTextValue CHR(10)
  151. ' ' tTextObj.cAutoWrap CHR(10)
  152. ' ' tTextObj.cAutoResize CHR(10)
  153. ' ' tTextObj.cAlignment CHR(10)
  154. ' ' tTextObj.cFgColour CHR(10)
  155. ' ' tTextObj.cBgColour CHR(10)
  156. ' ' tTextObj.cFontNo CHR(10)
  157. ' ' tTextObj.cKeeptext CHR(10)
  158. ' ' tTextObj.cZOrder CHR(10)
  159. ' ' tTextObj.cEndObject CHR(10) CHR(10).
  160. END.
  161. iRectDick = 1.
  162. iRectX = iStart[01] - iRectDick.
  163. iRectY = 1750 - iRectDick.
  164. iRectBreit = iBreit[01] + iBreit[02] + iBreit[03] + iBreit[04] + iBreit[05] + iBreit[06] + iRectDick + iRectDick.
  165. iRectHoch = (iHoch[01] * 17) + iRectDick + iRectDick.
  166. PUT CONTROL ' ' 'BeginObject=Rectangle' CHR(10)
  167. ' ' 'Name=Rect_1' CHR(10)
  168. ' ' SUBSTITUTE('X-mm=&1', iRectX) CHR(10)
  169. ' ' SUBSTITUTE('Y-mm=&1', iRectY) CHR(10)
  170. ' ' SUBSTITUTE('Width-mm=&1', iRectBreit) CHR(10)
  171. ' ' SUBSTITUTE('Height-mm=&1', iRectHoch) CHR(10)
  172. ' ' 'Filled=yes' CHR(10)
  173. ' ' 'BgColor=0,0,0' CHR(10)
  174. ' ' 'EndObject=Rectangle' CHR(10) CHR(10).
  175. iRectDick = 1.
  176. iRectX = iStart[07] - iRectDick.
  177. iRectY = 1750 - iRectDick.
  178. iRectBreit = iBreit[07] + iBreit[08] + iBreit[09] + iBreit[10] + iRectDick + iRectDick.
  179. iRectHoch = (iHoch[01] * 17) + iRectDick + iRectDick.
  180. PUT CONTROL ' ' 'BeginObject=Rectangle' CHR(10)
  181. ' ' 'Name=Rect_2' CHR(10)
  182. ' ' SUBSTITUTE('X-mm=&1', iRectX) CHR(10)
  183. ' ' SUBSTITUTE('Y-mm=&1', iRectY) CHR(10)
  184. ' ' SUBSTITUTE('Width-mm=&1', iRectBreit) CHR(10)
  185. ' ' SUBSTITUTE('Height-mm=&1', iRectHoch) CHR(10)
  186. ' ' 'Filled=yes' CHR(10)
  187. ' ' 'BgColor=0,0,0' CHR(10)
  188. ' ' 'EndObject=Rectangle' CHR(10) CHR(10).
  189. OUTPUT CLOSE.