g-cocacola.w 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733
  1. &ANALYZE-SUSPEND _VERSION-NUMBER AB_v10r12 GUI ADM2
  2. &ANALYZE-RESUME
  3. &Scoped-define WINDOW-NAME CURRENT-WINDOW
  4. &Scoped-define FRAME-NAME gCocaCola
  5. {adecomm/appserv.i}
  6. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS gCocaCola
  7. /*------------------------------------------------------------------------
  8. File:
  9. Description: from cntnrdlg.w - ADM2 SmartDialog Template
  10. Input Parameters:
  11. <none>
  12. Output Parameters:
  13. <none>
  14. Author:
  15. Created:
  16. ------------------------------------------------------------------------*/
  17. /* This .W file was created with the Progress AppBuilder. */
  18. /*----------------------------------------------------------------------*/
  19. /* Create an unnamed pool to store all the widgets created
  20. by this procedure. This is a good default which assures
  21. that this procedure's triggers and internal procedures
  22. will execute in this procedure's storage, and that proper
  23. cleanup will occur on deletion of the procedure. */
  24. CREATE WIDGET-POOL.
  25. /* *************************** Definitions ************************** */
  26. /* Parameters Definitions --- */
  27. /* Local Variable Definitions --- */
  28. DEFINE VARIABLE iVersion AS INTEGER NO-UNDO.
  29. DEFINE VARIABLE cParam AS CHARACTER NO-UNDO EXTENT.
  30. /*{ propertiescocacola.i }*/
  31. { incl/dlgdefinition.i }
  32. { src/adm2/widgetprto.i }
  33. /* _UIB-CODE-BLOCK-END */
  34. &ANALYZE-RESUME
  35. &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
  36. /* ******************** Preprocessor Definitions ******************** */
  37. &Scoped-define PROCEDURE-TYPE SmartDialog
  38. &Scoped-define DB-AWARE no
  39. &Scoped-define ADM-CONTAINER DIALOG-BOX
  40. &Scoped-define ADM-SUPPORTED-LINKS Data-Target,Data-Source,Page-Target,Update-Source,Update-Target
  41. /* Name of designated FRAME-NAME and/or first browse and/or first query */
  42. &Scoped-define FRAME-NAME gCocaCola
  43. /* Standard List Definitions */
  44. &Scoped-Define ENABLED-OBJECTS RECT-2 CB_Version CB_Jahr F_abDatum CB_Monat ~
  45. CB_Hersteller CB_Lieferant F_SalerID F_Datei Btn_OK Btn_Cancel
  46. &Scoped-Define DISPLAYED-OBJECTS CB_Version CB_Jahr F_abDatum CB_Monat ~
  47. CB_Hersteller CB_Lieferant F_SalerID F_Datei
  48. /* Custom List Definitions */
  49. /* List-1,List-2,List-3,List-4,List-5,List-6 */
  50. &Scoped-define List-6 CB_Version CB_Jahr F_abDatum CB_Monat CB_Hersteller ~
  51. CB_Lieferant F_SalerID F_Datei
  52. /* _UIB-PREPROCESSOR-BLOCK-END */
  53. &ANALYZE-RESUME
  54. /* *********************** Control Definitions ********************** */
  55. /* Define a dialog box */
  56. /* Definitions of the field level widgets */
  57. DEFINE BUTTON Btn_Cancel AUTO-END-KEY
  58. LABEL "abbrechen"
  59. SIZE 15 BY 1.
  60. DEFINE BUTTON Btn_OK AUTO-GO
  61. LABEL "OK"
  62. SIZE 15 BY 1.
  63. DEFINE VARIABLE CB_Hersteller AS CHARACTER FORMAT "X(256)":U
  64. LABEL "Hersteller"
  65. VIEW-AS COMBO-BOX INNER-LINES 5
  66. LIST-ITEM-PAIRS "Item 1","Item 1"
  67. DROP-DOWN-LIST
  68. SIZE 44 BY 1
  69. BGCOLOR 15 NO-UNDO.
  70. DEFINE VARIABLE CB_Jahr AS CHARACTER FORMAT "x(04)":U
  71. LABEL "Jahr"
  72. VIEW-AS COMBO-BOX INNER-LINES 5
  73. LIST-ITEMS "0"
  74. DROP-DOWN-LIST
  75. SIZE 11 BY 1
  76. BGCOLOR 15 NO-UNDO.
  77. DEFINE VARIABLE CB_Lieferant AS CHARACTER FORMAT "X(256)":U
  78. LABEL "Lieferant"
  79. VIEW-AS COMBO-BOX INNER-LINES 5
  80. LIST-ITEM-PAIRS "Item 1","Item 1"
  81. DROP-DOWN-LIST
  82. SIZE 44 BY 1
  83. BGCOLOR 15 NO-UNDO.
  84. DEFINE VARIABLE CB_Monat AS CHARACTER FORMAT "x(02)":U INITIAL "01"
  85. LABEL "Monat"
  86. VIEW-AS COMBO-BOX INNER-LINES 5
  87. LIST-ITEMS "01,","02,","03,","04,","05,","06,","07,","08,","09,","10,","11,","12"
  88. DROP-DOWN-LIST
  89. SIZE 9 BY 1
  90. BGCOLOR 15 NO-UNDO.
  91. DEFINE VARIABLE CB_Version AS INTEGER FORMAT "9":U INITIAL ?
  92. LABEL "Version"
  93. VIEW-AS COMBO-BOX INNER-LINES 5
  94. LIST-ITEM-PAIRS "Version 1",1,
  95. "Version 2",2
  96. DROP-DOWN-LIST
  97. SIZE 40 BY 1
  98. BGCOLOR 15 NO-UNDO.
  99. DEFINE VARIABLE F_abDatum AS DATE FORMAT "99.99.9999":U
  100. LABEL "ab Datum"
  101. VIEW-AS FILL-IN NATIVE
  102. SIZE 16 BY 1
  103. BGCOLOR 15 NO-UNDO.
  104. DEFINE VARIABLE F_Datei AS CHARACTER FORMAT "X(256)":U
  105. LABEL "Speicherort"
  106. VIEW-AS FILL-IN NATIVE
  107. SIZE 43.6 BY 1 TOOLTIP "CTRL-F1 = Inhalt beschreibbar machen"
  108. BGCOLOR 15 NO-UNDO.
  109. DEFINE VARIABLE F_SalerID AS CHARACTER FORMAT "X(256)":U
  110. LABEL "ID bei Coca Cola"
  111. VIEW-AS FILL-IN NATIVE
  112. SIZE 24 BY 1 TOOLTIP "CTRL-F1 = Inhalt beschreibbar machen"
  113. BGCOLOR 15 NO-UNDO.
  114. DEFINE RECTANGLE RECT-2
  115. EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
  116. SIZE 72 BY 7.14.
  117. /* ************************ Frame Definitions *********************** */
  118. DEFINE FRAME gCocaCola
  119. CB_Version AT ROW 2 COL 21 COLON-ALIGNED WIDGET-ID 16
  120. CB_Jahr AT ROW 3 COL 21 COLON-ALIGNED WIDGET-ID 4
  121. F_abDatum AT ROW 3 COL 21 COLON-ALIGNED WIDGET-ID 18
  122. CB_Monat AT ROW 3 COL 41 COLON-ALIGNED WIDGET-ID 6
  123. CB_Hersteller AT ROW 4 COL 21 COLON-ALIGNED WIDGET-ID 8
  124. CB_Lieferant AT ROW 5 COL 21 COLON-ALIGNED WIDGET-ID 10
  125. F_SalerID AT ROW 6 COL 21 COLON-ALIGNED WIDGET-ID 12
  126. F_Datei AT ROW 7 COL 21 COLON-ALIGNED WIDGET-ID 14
  127. Btn_OK AT ROW 9 COL 15.8
  128. Btn_Cancel AT ROW 9 COL 48.6
  129. RECT-2 AT ROW 1.48 COL 3 WIDGET-ID 2
  130. SPACE(1.99) SKIP(2.18)
  131. WITH VIEW-AS DIALOG-BOX KEEP-TAB-ORDER
  132. SIDE-LABELS NO-UNDERLINE THREE-D SCROLLABLE
  133. BGCOLOR 15
  134. TITLE "Auswertung Coca Cola"
  135. CANCEL-BUTTON Btn_Cancel WIDGET-ID 100.
  136. /* *********************** Procedure Settings ************************ */
  137. &ANALYZE-SUSPEND _PROCEDURE-SETTINGS
  138. /* Settings for THIS-PROCEDURE
  139. Type: SmartDialog
  140. Allow: Basic,Browse,DB-Fields,Query,Smart
  141. Container Links: Data-Target,Data-Source,Page-Target,Update-Source,Update-Target
  142. Design Page: 1
  143. Other Settings: COMPILE APPSERVER
  144. */
  145. &ANALYZE-RESUME _END-PROCEDURE-SETTINGS
  146. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB gCocaCola
  147. /* ************************* Included-Libraries *********************** */
  148. {src/adm2/containr.i}
  149. /* _UIB-CODE-BLOCK-END */
  150. &ANALYZE-RESUME
  151. /* *********** Runtime Attributes and AppBuilder Settings *********** */
  152. &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES
  153. /* SETTINGS FOR DIALOG-BOX gCocaCola
  154. FRAME-NAME */
  155. ASSIGN
  156. FRAME gCocaCola:SCROLLABLE = FALSE
  157. FRAME gCocaCola:HIDDEN = TRUE.
  158. /* SETTINGS FOR COMBO-BOX CB_Hersteller IN FRAME gCocaCola
  159. 6 */
  160. /* SETTINGS FOR COMBO-BOX CB_Jahr IN FRAME gCocaCola
  161. 6 */
  162. /* SETTINGS FOR COMBO-BOX CB_Lieferant IN FRAME gCocaCola
  163. 6 */
  164. /* SETTINGS FOR COMBO-BOX CB_Monat IN FRAME gCocaCola
  165. 6 */
  166. /* SETTINGS FOR COMBO-BOX CB_Version IN FRAME gCocaCola
  167. 6 */
  168. /* SETTINGS FOR FILL-IN F_abDatum IN FRAME gCocaCola
  169. 6 */
  170. /* SETTINGS FOR FILL-IN F_Datei IN FRAME gCocaCola
  171. 6 */
  172. /* SETTINGS FOR FILL-IN F_SalerID IN FRAME gCocaCola
  173. 6 */
  174. /* _RUN-TIME-ATTRIBUTES-END */
  175. &ANALYZE-RESUME
  176. /* Setting information for Queries and Browse Widgets fields */
  177. &ANALYZE-SUSPEND _QUERY-BLOCK DIALOG-BOX gCocaCola
  178. /* Query rebuild information for DIALOG-BOX gCocaCola
  179. _Options = "SHARE-LOCK"
  180. _Query is NOT OPENED
  181. */ /* DIALOG-BOX gCocaCola */
  182. &ANALYZE-RESUME
  183. /* ************************ Control Triggers ************************ */
  184. &Scoped-define SELF-NAME gCocaCola
  185. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL gCocaCola gCocaCola
  186. ON END-ERROR OF FRAME gCocaCola /* Auswertung Coca Cola */
  187. DO:
  188. RUN ENDE.
  189. RETURN NO-APPLY.
  190. END.
  191. /* _UIB-CODE-BLOCK-END */
  192. &ANALYZE-RESUME
  193. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL gCocaCola gCocaCola
  194. ON WINDOW-CLOSE OF FRAME gCocaCola /* Auswertung Coca Cola */
  195. DO:
  196. RUN ENDE.
  197. RETURN NO-APPLY.
  198. END.
  199. /* _UIB-CODE-BLOCK-END */
  200. &ANALYZE-RESUME
  201. &Scoped-define SELF-NAME Btn_Cancel
  202. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_Cancel gCocaCola
  203. ON CHOOSE OF Btn_Cancel IN FRAME gCocaCola /* abbrechen */
  204. DO:
  205. RUN ENDE.
  206. RETURN NO-APPLY.
  207. END.
  208. /* _UIB-CODE-BLOCK-END */
  209. &ANALYZE-RESUME
  210. &Scoped-define SELF-NAME Btn_OK
  211. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_OK gCocaCola
  212. ON CHOOSE OF Btn_OK IN FRAME gCocaCola /* OK */
  213. DO:
  214. DEFINE VARIABLE dvonDatum AS DATE NO-UNDO.
  215. DEFINE VARIABLE dbisDatum AS DATE NO-UNDO.
  216. DEFINE VARIABLE iHerst AS INTEGER NO-UNDO.
  217. DEFINE VARIABLE iLieferant AS INTEGER NO-UNDO.
  218. DEFINE VARIABLE iPos AS INTEGER NO-UNDO.
  219. DEFINE VARIABLE cPfad AS CHARACTER NO-UNDO.
  220. DO WITH FRAME {&FRAME-NAME}:
  221. PUT-KEY-VALUE SECTION 'CocaCola'
  222. KEY 'Version'
  223. VALUE CB_Version:SCREEN-VALUE NO-ERROR.
  224. PUT-KEY-VALUE SECTION 'CocaCola'
  225. KEY 'Hersteller'
  226. VALUE CB_Hersteller:SCREEN-VALUE NO-ERROR.
  227. PUT-KEY-VALUE SECTION 'CocaCola'
  228. KEY 'Lieferant'
  229. VALUE CB_Lieferant:SCREEN-VALUE NO-ERROR.
  230. PUT-KEY-VALUE SECTION 'CocaCola'
  231. KEY 'Pfad'
  232. VALUE F_Datei:SCREEN-VALUE NO-ERROR.
  233. PUT-KEY-VALUE SECTION 'CocaCola'
  234. KEY 'SalerID'
  235. VALUE F_SalerID:SCREEN-VALUE.
  236. ASSIGN {&List-6}.
  237. END.
  238. F_Datei = REPLACE(REPLACE(F_Datei, '\', '/'), '//', '/').
  239. cPfad = SUBSTRING(F_Datei, 1, R-INDEX(F_Datei, '/') - 1).
  240. FILE-INFO:FILE-NAME = cPfad.
  241. IF FILE-INFO:PATHNAME = ? OR
  242. FILE-INFO:PATHNAME = '' OR
  243. INDEX(FILE-INFO:FILE-TYPE, 'D') = 0 THEN
  244. DO:
  245. MESSAGE 'Dateiname ungültig! ' VIEW-AS ALERT-BOX.
  246. F_Datei:READ-ONLY = FALSE.
  247. APPLY 'ENTRY' TO F_Datei.
  248. RETURN NO-APPLY.
  249. END.
  250. cPfad = FILE-INFO:PATHNAME + '/'.
  251. btnOK = TRUE.
  252. SESSION:SET-WAIT-STATE('GENERAL').
  253. Btn_OK :SENSITIVE = FALSE.
  254. Btn_Cancel:SENSITIVE = FALSE.
  255. iHerst = INTEGER(CB_Hersteller:SCREEN-VALUE).
  256. iLieferant = INTEGER(CB_Lieferant :SCREEN-VALUE).
  257. dvonDatum = DATE(INTEGER(CB_Monat:SCREEN-VALUE),01,INTEGER(CB_Jahr:SCREEN-VALUE)).
  258. dbisDatum = DATE(INTEGER(CB_Monat:SCREEN-VALUE),28,INTEGER(CB_Jahr:SCREEN-VALUE)).
  259. DO WHILE TRUE:
  260. IF MONTH(dbisDatum) <> MONTH(dbisDatum + 1) THEN LEAVE.
  261. dbisdatum = dbisDatum + 1.
  262. END.
  263. CASE iVersion:
  264. WHEN 1 THEN
  265. DO:
  266. RUN cocacola.p ( Firma , F_SalerID ,
  267. iHerst , iLieferant,
  268. dvonDatum, dbisDatum , F_Datei ).
  269. END.
  270. WHEN 2 THEN
  271. DO:
  272. EXTENT(cParam) = 6.
  273. ASSIGN
  274. cParam[01] = Firma
  275. cParam[02] = F_SalerID
  276. cParam[03] = STRING(iHerst)
  277. cParam[04] = STRING(iLieferant)
  278. cParam[05] = STRING(F_abDatum,'99.99.9999')
  279. cParam[06] = F_Datei.
  280. RUN cocacola_v2.p ( INPUT cParam ).
  281. END.
  282. END CASE.
  283. SESSION:SET-WAIT-STATE('').
  284. Btn_OK :SENSITIVE = TRUE.
  285. Btn_Cancel:SENSITIVE = TRUE.
  286. RUN ENDE.
  287. RETURN NO-APPLY.
  288. END.
  289. /* _UIB-CODE-BLOCK-END */
  290. &ANALYZE-RESUME
  291. &Scoped-define SELF-NAME CB_Hersteller
  292. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_Hersteller gCocaCola
  293. ON VALUE-CHANGED OF CB_Hersteller IN FRAME gCocaCola /* Hersteller */
  294. DO:
  295. DEFINE VARIABLE iHerst AS INTEGER NO-UNDO.
  296. iHerst = INTEGER(SELF:SCREEN-VALUE).
  297. RUN COMBO_LIEFERANT ( iHerst ).
  298. CB_Lieferant:SCREEN-VALUE = ENTRY(2, CB_Lieferant:LIST-ITEM-PAIRS, ';') NO-ERROR.
  299. RETURN NO-APPLY.
  300. END.
  301. /* _UIB-CODE-BLOCK-END */
  302. &ANALYZE-RESUME
  303. &Scoped-define SELF-NAME CB_Version
  304. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_Version gCocaCola
  305. ON VALUE-CHANGED OF CB_Version IN FRAME gCocaCola /* Version */
  306. DO:
  307. iVersion = INTEGER(CB_Version:SCREEN-VALUE).
  308. IF iVersion = ? THEN iVersion = 0.
  309. CASE iVersion:
  310. WHEN 1 THEN
  311. DO:
  312. CB_Jahr :HIDDEN = FALSE.
  313. CB_Monat :HIDDEN = FALSE.
  314. F_abDatum:HIDDEN = TRUE .
  315. F_abDatum = ?.
  316. DISPLAY F_abDatum.
  317. END.
  318. WHEN 2 THEN
  319. DO:
  320. CB_Jahr :HIDDEN = TRUE .
  321. CB_Monat :HIDDEN = TRUE .
  322. F_abDatum:HIDDEN = FALSE.
  323. F_abDatum = TODAY - 31.
  324. DISPLAY F_abDatum WITH FRAME {&FRAME-NAME}.
  325. END.
  326. END CASE.
  327. END.
  328. /* _UIB-CODE-BLOCK-END */
  329. &ANALYZE-RESUME
  330. &Scoped-define SELF-NAME F_Datei
  331. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Datei gCocaCola
  332. ON CTRL-F1 OF F_Datei IN FRAME gCocaCola /* Speicherort */
  333. DO:
  334. SELF:READ-ONLY = FALSE.
  335. APPLY 'ENTRY' TO SELF.
  336. RETURN NO-APPLY.
  337. END.
  338. /* _UIB-CODE-BLOCK-END */
  339. &ANALYZE-RESUME
  340. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Datei gCocaCola
  341. ON RIGHT-MOUSE-CLICK OF F_Datei IN FRAME gCocaCola /* Speicherort */
  342. DO:
  343. DEFINE VARIABLE cPfad AS CHARACTER NO-UNDO.
  344. SYSTEM-DIALOG GET-DIR cPfad
  345. INITIAL-DIR F_Datei:SCREEN-VALUE
  346. TITLE 'Speicherort für die XML-Datei'.
  347. cPfad = REPLACE(REPLACE(cPfad + '/CocaCola.xml', '\', '/'), '//', '/').
  348. F_Datei:SCREEN-VALUE = cPfad.
  349. RETURN NO-APPLY.
  350. END.
  351. /* _UIB-CODE-BLOCK-END */
  352. &ANALYZE-RESUME
  353. &Scoped-define SELF-NAME F_SalerID
  354. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_SalerID gCocaCola
  355. ON CTRL-F1 OF F_SalerID IN FRAME gCocaCola /* ID bei Coca Cola */
  356. DO:
  357. SELF:READ-ONLY = FALSE.
  358. APPLY 'ENTRY' TO SELF.
  359. RETURN NO-APPLY.
  360. END.
  361. /* _UIB-CODE-BLOCK-END */
  362. &ANALYZE-RESUME
  363. &UNDEFINE SELF-NAME
  364. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK gCocaCola
  365. /* *************************** Main Block *************************** */
  366. { incl/dlgmainblock.i }
  367. {src/adm2/dialogmn.i}
  368. /* _UIB-CODE-BLOCK-END */
  369. &ANALYZE-RESUME
  370. /* ********************** Internal Procedures *********************** */
  371. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE adm-create-objects gCocaCola _ADM-CREATE-OBJECTS
  372. PROCEDURE adm-create-objects :
  373. /*------------------------------------------------------------------------------
  374. Purpose: Create handles for all SmartObjects used in this procedure.
  375. After SmartObjects are initialized, then SmartLinks are added.
  376. Parameters: <none>
  377. ------------------------------------------------------------------------------*/
  378. END PROCEDURE.
  379. /* _UIB-CODE-BLOCK-END */
  380. &ANALYZE-RESUME
  381. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE COMBO_LIEFERANT gCocaCola
  382. PROCEDURE COMBO_LIEFERANT :
  383. /*------------------------------------------------------------------------------*/
  384. /* Purpose: Super Override */
  385. /* Parameters: */
  386. /* Notes: */
  387. /*------------------------------------------------------------------------------*/
  388. DEFINE INPUT PARAMETER ipHerst AS INTEGER NO-UNDO.
  389. DEFINE VARIABLE cString AS CHARACTER NO-UNDO.
  390. cString = ''.
  391. FOR EACH Artst NO-LOCK
  392. WHERE Artst.Firma = Firma
  393. AND Artst.Aktiv = TRUE
  394. AND Artst.Herst = ipHerst,
  395. EACH ArtLief NO-LOCK
  396. WHERE ArtLief.Firma = Artst.Firma
  397. AND ArtLief.Artnr = Artst.Artnr
  398. AND ArtLief.Inhalt = Artst.Inhalt
  399. AND ArtLief.Jahr = Artst.Jahr
  400. BREAK BY ArtLief.Knr:
  401. IF NOT FIRST-OF ( ArtLief.Knr ) THEN NEXT.
  402. FIND Adresse NO-LOCK
  403. WHERE Adresse.Firma = AdFirma
  404. AND Adresse.Knr = ArtLief.Knr.
  405. cString = cString
  406. + (IF cString = '' THEN '' ELSE ';')
  407. + STRING(Adresse.Knr,'999999 ') + Adresse.Anzeig_br
  408. + ';'
  409. + STRING(Adresse.Knr,'999999').
  410. END.
  411. DO WITH FRAME {&FRAME-NAME}:
  412. CB_Lieferant:DELIMITER = ';'.
  413. CB_Lieferant:LIST-ITEM-PAIRS = cString.
  414. END.
  415. END PROCEDURE.
  416. /* _UIB-CODE-BLOCK-END */
  417. &ANALYZE-RESUME
  418. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI gCocaCola _DEFAULT-DISABLE
  419. PROCEDURE disable_UI :
  420. /*------------------------------------------------------------------------------
  421. Purpose: DISABLE the User Interface
  422. Parameters: <none>
  423. Notes: Here we clean-up the user-interface by deleting
  424. dynamic widgets we have created and/or hide
  425. frames. This procedure is usually called when
  426. we are ready to "clean-up" after running.
  427. ------------------------------------------------------------------------------*/
  428. /* Hide all frames. */
  429. HIDE FRAME gCocaCola.
  430. END PROCEDURE.
  431. /* _UIB-CODE-BLOCK-END */
  432. &ANALYZE-RESUME
  433. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enableObject gCocaCola
  434. PROCEDURE enableObject :
  435. /*------------------------------------------------------------------------------*/
  436. /* Purpose: Super Override */
  437. /* Parameters: */
  438. /* Notes: */
  439. /*------------------------------------------------------------------------------*/
  440. DEFINE VARIABLE cString AS CHARACTER NO-UNDO.
  441. DEFINE VARIABLE cHerst AS CHARACTER NO-UNDO.
  442. DEFINE VARIABLE iHerst AS INTEGER NO-UNDO.
  443. DEFINE VARIABLE cLieferant AS CHARACTER NO-UNDO.
  444. DEFINE VARIABLE iLieferant AS INTEGER NO-UNDO.
  445. DEFINE VARIABLE cPfad AS CHARACTER NO-UNDO.
  446. DEFINE VARIABLE cSalerID AS CHARACTER NO-UNDO.
  447. GET-KEY-VALUE SECTION 'CocaCola'
  448. KEY 'Version'
  449. VALUE cString.
  450. IF cString = ? THEN cString = ''.
  451. IF cString = '' THEN cString = '1'.
  452. iVersion = INTEGER(cString) NO-ERROR.
  453. IF ERROR-STATUS:ERROR THEN iVersion = 1.
  454. GET-KEY-VALUE SECTION 'CocaCola'
  455. KEY 'Hersteller'
  456. VALUE cHerst.
  457. IF cHerst = ? THEN cHerst = ''.
  458. GET-KEY-VALUE SECTION 'CocaCola'
  459. KEY 'Lieferant'
  460. VALUE cLieferant.
  461. IF cLieferant = ? THEN cLieferant = ''.
  462. GET-KEY-VALUE SECTION 'CocaCola'
  463. KEY 'Pfad'
  464. VALUE cPfad.
  465. IF cPfad = ? THEN cPfad = ''.
  466. IF iVersion = 1 THEN
  467. DO:
  468. IF cPfad <> '' THEN cPfad = REPLACE(cPfad, '/CocaCola.xml', '').
  469. cPfad = REPLACE(REPLACE(cPfad + '/CocaCola.xml', '\', '/'), '//', '/').
  470. END.
  471. GET-KEY-VALUE SECTION 'CocaCola'
  472. KEY 'SalerID'
  473. VALUE cSalerID.
  474. IF cSalerID = ? THEN cSalerID = ''.
  475. DO WITH FRAME {&FRAME-NAME}:
  476. CB_Version:SCREEN-VALUE = STRING(iVersion,'9').
  477. cString = ''.
  478. FOR EACH Tabel NO-LOCK
  479. WHERE Tabel.Firma = Firma
  480. AND Tabel.RecArt = 'HERST'
  481. AND Tabel.CodeC = ''
  482. AND Tabel.Sprcd = 1:
  483. cString = cString
  484. + (IF cString = '' THEN '' ELSE ';')
  485. + Tabel.Bez1
  486. + SUBSTITUTE('(&1)', Tabel.CodeI)
  487. + ';'
  488. + STRING(Tabel.CodeI,'999999').
  489. END.
  490. CB_Hersteller:DELIMITER = ';'.
  491. CB_Hersteller:LIST-ITEM-PAIRS = cString.
  492. IF cHerst = '' THEN cHerst = ENTRY(2, cString, ';').
  493. CB_Hersteller:SCREEN-VALUE = cHerst NO-ERROR.
  494. iHerst = INTEGER(cHerst) NO-ERROR.
  495. RUN COMBO_LIEFERANT ( iHerst ).
  496. iLieferant = INTEGER(cLieferant) NO-ERROR.
  497. CB_Lieferant:SCREEN-VALUE = STRING(iLieferant,'999999') NO-ERROR.
  498. F_Datei = cPfad.
  499. F_SalerID = cSalerID.
  500. END.
  501. { incl/dlgenableobject.i }
  502. DO WITH FRAME {&FRAME-NAME}:
  503. APPLY 'VALUE-CHANGED' TO CB_Version.
  504. cString = SUBSTITUTE('&1;&2;&3', STRING(YEAR(TODAY) - 2,'9999'),
  505. STRING(YEAR(TODAY) - 1,'9999'),
  506. STRING(YEAR(TODAY) - 0,'9999')).
  507. CB_Jahr:DELIMITER = ';'.
  508. CB_Jahr:LIST-ITEMS = cString.
  509. CB_Jahr:SCREEN-VALUE = STRING(YEAR(TODAY),'9999') NO-ERROR.
  510. CB_Monat:SCREEN-VALUE = STRING(MONTH(TODAY),'99').
  511. END.
  512. END PROCEDURE.
  513. /* _UIB-CODE-BLOCK-END */
  514. &ANALYZE-RESUME
  515. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enable_UI gCocaCola _DEFAULT-ENABLE
  516. PROCEDURE enable_UI :
  517. /*------------------------------------------------------------------------------
  518. Purpose: ENABLE the User Interface
  519. Parameters: <none>
  520. Notes: Here we display/view/enable the widgets in the
  521. user-interface. In addition, OPEN all queries
  522. associated with each FRAME and BROWSE.
  523. These statements here are based on the "Other
  524. Settings" section of the widget Property Sheets.
  525. ------------------------------------------------------------------------------*/
  526. DISPLAY CB_Version CB_Jahr F_abDatum CB_Monat CB_Hersteller CB_Lieferant
  527. F_SalerID F_Datei
  528. WITH FRAME gCocaCola.
  529. ENABLE RECT-2 CB_Version CB_Jahr F_abDatum CB_Monat CB_Hersteller
  530. CB_Lieferant F_SalerID F_Datei Btn_OK Btn_Cancel
  531. WITH FRAME gCocaCola.
  532. VIEW FRAME gCocaCola.
  533. {&OPEN-BROWSERS-IN-QUERY-gCocaCola}
  534. END PROCEDURE.
  535. /* _UIB-CODE-BLOCK-END */
  536. &ANALYZE-RESUME
  537. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENDE gCocaCola
  538. PROCEDURE ENDE :
  539. /*------------------------------------------------------------------------------*/
  540. /* Purpose: Super Override */
  541. /* Parameters: */
  542. /* Notes: */
  543. /*------------------------------------------------------------------------------*/
  544. IF btnOK THEN
  545. DO:
  546. END.
  547. { incl/dlgende.i }
  548. END PROCEDURE.
  549. /* _UIB-CODE-BLOCK-END */
  550. &ANALYZE-RESUME
  551. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE initializeObject gCocaCola
  552. PROCEDURE initializeObject :
  553. /*------------------------------------------------------------------------------
  554. Purpose: Super Override
  555. Parameters:
  556. Notes:
  557. ------------------------------------------------------------------------------*/
  558. /* Code placed here will execute PRIOR to standard behavior. */
  559. RUN SUPER.
  560. DO WITH FRAME {&FRAME-NAME}:
  561. IF F_SalerID:SCREEN-VALUE <> '' THEN F_SalerID:READ-ONLY = TRUE.
  562. IF F_Datei :SCREEN-VALUE <> '' THEN F_Datei :READ-ONLY = TRUE.
  563. END.
  564. END PROCEDURE.
  565. /* _UIB-CODE-BLOCK-END */
  566. &ANALYZE-RESUME