d-aufko-auftrag.w 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546
  1. &ANALYZE-SUSPEND _VERSION-NUMBER AB_v10r12 GUI ADM2
  2. &ANALYZE-RESUME
  3. /* Connected Databases
  4. anadat PROGRESS
  5. */
  6. &Scoped-define WINDOW-NAME CURRENT-WINDOW
  7. {adecomm/appserv.i}
  8. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS dTables
  9. /*------------------------------------------------------------------------
  10. File:
  11. Description: from DATA.W - Template For SmartData objects in the ADM
  12. Input Parameters:
  13. <none>
  14. Output Parameters:
  15. <none>
  16. Modified: February 24, 1999
  17. ------------------------------------------------------------------------*/
  18. /* This .W file was created with the Progress AppBuilder. */
  19. /*----------------------------------------------------------------------*/
  20. /* Create an unnamed pool to store all the widgets created
  21. by this procedure. This is a good default which assures
  22. that this procedure's triggers and internal procedures
  23. will execute in this procedure's storage, and that proper
  24. cleanup will occur on deletion of the procedure. */
  25. CREATE WIDGET-POOL.
  26. /* *************************** Definitions ************************** */
  27. /* Parameters Definitions --- */
  28. /* Local Variable Definitions --- */
  29. &SCOPED-DEFINE Tabelle Aufko
  30. &SCOPED-DEFINE TabWhere USE-INDEX Aufko-k1 ~
  31. WHERE {&Tabelle}.Firma = RowObject.Firma ~
  32. AND {&Tabelle}.Aufnr = RowObject.Aufnr
  33. { incl/datdefinition.i }
  34. /* _UIB-CODE-BLOCK-END */
  35. &ANALYZE-RESUME
  36. &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
  37. /* ******************** Preprocessor Definitions ******************** */
  38. &Global-define DATA-LOGIC-PROCEDURE .p
  39. &Scoped-define PROCEDURE-TYPE SmartDataObject
  40. &Scoped-define DB-AWARE yes
  41. &Scoped-define ADM-SUPPORTED-LINKS Data-Source,Data-Target,Navigation-Target,Update-Target,Commit-Target,Filter-Target
  42. /* Db-Required definitions. */
  43. &IF DEFINED(DB-REQUIRED) = 0 &THEN
  44. &GLOBAL-DEFINE DB-REQUIRED TRUE
  45. &ENDIF
  46. &GLOBAL-DEFINE DB-REQUIRED-START &IF {&DB-REQUIRED} &THEN
  47. &GLOBAL-DEFINE DB-REQUIRED-END &ENDIF
  48. &Scoped-define QUERY-NAME Query-Main
  49. /* Internal Tables (found by Frame, Query & Browse Queries) */
  50. &Scoped-define INTERNAL-TABLES Aufko
  51. /* Definitions for QUERY Query-Main */
  52. &Scoped-Define ENABLED-FIELDS Firma Aufnr Faknr Knr Fak_Art Lief_Datum Lief_Bed Tour_Nr1 Tour_Nr2 Auf_Tot~
  53. Fahrer BeiFahrer LKW Kunde Gewicht
  54. &Scoped-define ENABLED-FIELDS-IN-Aufko Firma Aufnr Faknr Knr Fak_Art ~
  55. Lief_Datum Lief_Bed Tour_Nr1 Tour_Nr2 Auf_Tot Fahrer BeiFahrer LKW Gewicht
  56. &Scoped-Define DATA-FIELDS Firma Aufnr Faknr Knr Fak_Art Lief_Datum Lief_Bed Tour_Nr1 Tour_Nr2 Auf_Tot~
  57. Fahrer BeiFahrer LKW Kunde Gewicht
  58. &Scoped-define DATA-FIELDS-IN-Aufko Firma Aufnr Faknr Knr Fak_Art ~
  59. Lief_Datum Lief_Bed Tour_Nr1 Tour_Nr2 Auf_Tot Fahrer BeiFahrer LKW Gewicht
  60. &Scoped-Define MANDATORY-FIELDS Firma Knr
  61. &Scoped-Define APPLICATION-SERVICE
  62. &Scoped-Define ASSIGN-LIST
  63. &Scoped-Define DATA-FIELD-DEFS "d-aufko-auftrag.i"
  64. &Scoped-Define DATA-TABLE-NO-UNDO NO-UNDO
  65. &Scoped-define QUERY-STRING-Query-Main FOR EACH Aufko NO-LOCK INDEXED-REPOSITION
  66. {&DB-REQUIRED-START}
  67. &Scoped-define OPEN-QUERY-Query-Main OPEN QUERY Query-Main FOR EACH Aufko NO-LOCK INDEXED-REPOSITION.
  68. {&DB-REQUIRED-END}
  69. &Scoped-define TABLES-IN-QUERY-Query-Main Aufko
  70. &Scoped-define FIRST-TABLE-IN-QUERY-Query-Main Aufko
  71. /* Custom List Definitions */
  72. /* List-1,List-2,List-3,List-4,List-5,List-6 */
  73. /* _UIB-PREPROCESSOR-BLOCK-END */
  74. &ANALYZE-RESUME
  75. /* ************************ Function Prototypes ********************** */
  76. {&DB-REQUIRED-START}
  77. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION-FORWARD getCurrentRecid dTables _DB-REQUIRED
  78. FUNCTION getCurrentRecid RETURNS RECID
  79. ( /* parameter-definitions */ ) FORWARD.
  80. /* _UIB-CODE-BLOCK-END */
  81. &ANALYZE-RESUME
  82. {&DB-REQUIRED-END}
  83. {&DB-REQUIRED-START}
  84. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION-FORWARD getQueryBuffer dTables _DB-REQUIRED
  85. FUNCTION getQueryBuffer RETURNS HANDLE
  86. ( /* parameter-definitions */ ) FORWARD.
  87. /* _UIB-CODE-BLOCK-END */
  88. &ANALYZE-RESUME
  89. {&DB-REQUIRED-END}
  90. {&DB-REQUIRED-START}
  91. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION-FORWARD openQuery dTables _DB-REQUIRED
  92. FUNCTION openQuery RETURNS LOGICAL
  93. ( /* parameter-definitions */ ) FORWARD.
  94. /* _UIB-CODE-BLOCK-END */
  95. &ANALYZE-RESUME
  96. {&DB-REQUIRED-END}
  97. /* *********************** Control Definitions ********************** */
  98. {&DB-REQUIRED-START}
  99. /* Query definitions */
  100. &ANALYZE-SUSPEND
  101. DEFINE QUERY Query-Main FOR
  102. Aufko SCROLLING.
  103. &ANALYZE-RESUME
  104. {&DB-REQUIRED-END}
  105. /* ************************ Frame Definitions *********************** */
  106. /* *********************** Procedure Settings ************************ */
  107. &ANALYZE-SUSPEND _PROCEDURE-SETTINGS
  108. /* Settings for THIS-PROCEDURE
  109. Type: SmartDataObject
  110. Allow: Query
  111. Frames: 0
  112. Add Fields to: Neither
  113. Other Settings: PERSISTENT-ONLY COMPILE APPSERVER DB-AWARE
  114. */
  115. /* This procedure should always be RUN PERSISTENT. Report the error, */
  116. /* then cleanup and return. */
  117. IF NOT THIS-PROCEDURE:PERSISTENT THEN DO:
  118. MESSAGE "{&FILE-NAME} should only be RUN PERSISTENT.":U
  119. VIEW-AS ALERT-BOX ERROR BUTTONS OK.
  120. RETURN.
  121. END.
  122. &ANALYZE-RESUME _END-PROCEDURE-SETTINGS
  123. /* ************************* Create Window ************************** */
  124. &ANALYZE-SUSPEND _CREATE-WINDOW
  125. /* DESIGN Window definition (used by the UIB)
  126. CREATE WINDOW dTables ASSIGN
  127. HEIGHT = 1.62
  128. WIDTH = 66.
  129. /* END WINDOW DEFINITION */
  130. */
  131. &ANALYZE-RESUME
  132. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB dTables
  133. /* ************************* Included-Libraries *********************** */
  134. {src/adm2/data.i}
  135. /* _UIB-CODE-BLOCK-END */
  136. &ANALYZE-RESUME
  137. /* *********** Runtime Attributes and AppBuilder Settings *********** */
  138. &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES
  139. /* SETTINGS FOR WINDOW dTables
  140. VISIBLE,,RUN-PERSISTENT */
  141. /* _RUN-TIME-ATTRIBUTES-END */
  142. &ANALYZE-RESUME
  143. /* Setting information for Queries and Browse Widgets fields */
  144. &ANALYZE-SUSPEND _QUERY-BLOCK QUERY Query-Main
  145. /* Query rebuild information for SmartDataObject Query-Main
  146. _TblList = "AnaDat.Aufko"
  147. _Options = "NO-LOCK INDEXED-REPOSITION"
  148. _FldNameList[1] > AnaDat.Aufko.Firma
  149. "Firma" "Firma" ? ? "character" ? ? ? ? ? ? yes ? yes 8 yes ?
  150. _FldNameList[2] > AnaDat.Aufko.Aufnr
  151. "Aufnr" "Aufnr" ? ? "integer" ? ? ? ? ? ? yes ? no 8.4 yes ?
  152. _FldNameList[3] > AnaDat.Aufko.Faknr
  153. "Faknr" "Faknr" ? ? "integer" ? ? ? ? ? ? yes ? no 8.4 yes ?
  154. _FldNameList[4] > AnaDat.Aufko.Knr
  155. "Knr" "Knr" ? ? "integer" ? ? ? ? ? ? yes ? yes 7.2 yes ?
  156. _FldNameList[5] > AnaDat.Aufko.Fak_Art
  157. "Fak_Art" "Fak_Art" ? ? "integer" ? ? ? ? ? ? yes ? no 7.4 yes ?
  158. _FldNameList[6] > AnaDat.Aufko.Lief_Datum
  159. "Lief_Datum" "Lief_Datum" ? ? "date" ? ? ? ? ? ? yes ? no 10.8 yes ?
  160. _FldNameList[7] > AnaDat.Aufko.Lief_Bed
  161. "Lief_Bed" "Lief_Bed" ? ? "integer" ? ? ? ? ? ? yes ? no 8.4 yes ?
  162. _FldNameList[8] > AnaDat.Aufko.Tour_Nr1
  163. "Tour_Nr1" "Tour_Nr1" ? ? "integer" ? ? ? ? ? ? yes ? no 9 yes ?
  164. _FldNameList[9] > AnaDat.Aufko.Tour_Nr2
  165. "Tour_Nr2" "Tour_Nr2" ? ? "character" ? ? ? ? ? ? yes ? no 20 yes ?
  166. _FldNameList[10] > AnaDat.Aufko.Auf_Tot
  167. "Auf_Tot" "Auf_Tot" ? ? "decimal" ? ? ? ? ? ? yes ? no 14 yes ?
  168. _FldNameList[11] > AnaDat.Aufko.Fahrer
  169. "Fahrer" "Fahrer" ? ? "integer" ? ? ? ? ? ? yes ? no 6 yes ?
  170. _FldNameList[12] > AnaDat.Aufko.BeiFahrer
  171. "BeiFahrer" "BeiFahrer" ? ? "integer" ? ? ? ? ? ? yes ? no 9 yes ?
  172. _FldNameList[13] > AnaDat.Aufko.LKW
  173. "LKW" "LKW" ? ? "integer" ? ? ? ? ? ? yes ? no 4.8 yes ?
  174. _FldNameList[14] > "_<CALC>"
  175. "DYNAMIC-FUNCTION('getAdressAnzeige':U, RowObject.Knr )" "Kunde" ? "x(60)" "character" ? ? ? ? ? ? yes ? no 60 no ?
  176. _FldNameList[15] > AnaDat.Aufko.Gewicht
  177. "Gewicht" "Gewicht" ? ? "decimal" ? ? ? ? ? ? yes ? no 11.6 yes ?
  178. _Design-Parent is WINDOW dTables @ ( 1.14 , 2.6 )
  179. */ /* QUERY Query-Main */
  180. &ANALYZE-RESUME
  181. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK dTables
  182. /* *************************** Main Block *************************** */
  183. { incl/datmainblock.i }
  184. &IF DEFINED(UIB_IS_RUNNING) <> 0 &THEN
  185. RUN initializeObject.
  186. &ENDIF
  187. /* _UIB-CODE-BLOCK-END */
  188. &ANALYZE-RESUME
  189. /* ********************** Internal Procedures *********************** */
  190. {&DB-REQUIRED-START}
  191. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE DATA.CALCULATE dTables DATA.CALCULATE _DB-REQUIRED
  192. PROCEDURE DATA.CALCULATE :
  193. /*------------------------------------------------------------------------------
  194. Purpose: Calculate all the Calculated Expressions found in the
  195. SmartDataObject.
  196. Parameters: <none>
  197. ------------------------------------------------------------------------------*/
  198. ASSIGN
  199. rowObject.Kunde = (DYNAMIC-FUNCTION('getAdressAnzeige':U, RowObject.Knr ))
  200. .
  201. END PROCEDURE.
  202. /* _UIB-CODE-BLOCK-END */
  203. &ANALYZE-RESUME
  204. {&DB-REQUIRED-END}
  205. {&DB-REQUIRED-START}
  206. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE dataAvailable dTables _DB-REQUIRED
  207. PROCEDURE dataAvailable :
  208. /*------------------------------------------------------------------------------
  209. Purpose: Super Override
  210. Parameters:
  211. Notes:
  212. ------------------------------------------------------------------------------*/
  213. { incl/datdataavailable.i }
  214. END PROCEDURE.
  215. /* _UIB-CODE-BLOCK-END */
  216. &ANALYZE-RESUME
  217. {&DB-REQUIRED-END}
  218. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI dTables _DEFAULT-DISABLE
  219. PROCEDURE disable_UI :
  220. /*------------------------------------------------------------------------------
  221. Purpose: DISABLE the User Interface
  222. Parameters: <none>
  223. Notes: Here we clean-up the user-interface by deleting
  224. dynamic widgets we have created and/or hide
  225. frames. This procedure is usually called when
  226. we are ready to "clean-up" after running.
  227. ------------------------------------------------------------------------------*/
  228. /* Hide all frames. */
  229. IF THIS-PROCEDURE:PERSISTENT THEN DELETE PROCEDURE THIS-PROCEDURE.
  230. END PROCEDURE.
  231. /* _UIB-CODE-BLOCK-END */
  232. &ANALYZE-RESUME
  233. {&DB-REQUIRED-START}
  234. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE INAKTIVIEREN dTables _DB-REQUIRED
  235. PROCEDURE INAKTIVIEREN :
  236. /*------------------------------------------------------------------------------
  237. Purpose:
  238. Parameters: <none>
  239. Notes:
  240. ------------------------------------------------------------------------------*/
  241. { incl/datinaktivieren.i }
  242. END PROCEDURE.
  243. /* _UIB-CODE-BLOCK-END */
  244. &ANALYZE-RESUME
  245. {&DB-REQUIRED-END}
  246. {&DB-REQUIRED-START}
  247. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE initializeObject dTables _DB-REQUIRED
  248. PROCEDURE initializeObject :
  249. /*------------------------------------------------------------------------------
  250. Purpose: Super Override
  251. Parameters:
  252. Notes:
  253. ------------------------------------------------------------------------------*/
  254. { incl/datinitialize.i }
  255. END PROCEDURE.
  256. /* _UIB-CODE-BLOCK-END */
  257. &ANALYZE-RESUME
  258. {&DB-REQUIRED-END}
  259. {&DB-REQUIRED-START}
  260. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE REAKTIVIEREN dTables _DB-REQUIRED
  261. PROCEDURE REAKTIVIEREN :
  262. /*------------------------------------------------------------------------------
  263. Purpose:
  264. Parameters: <none>
  265. Notes:
  266. ------------------------------------------------------------------------------*/
  267. { incl/datreaktivieren.i }
  268. END PROCEDURE.
  269. /* _UIB-CODE-BLOCK-END */
  270. &ANALYZE-RESUME
  271. {&DB-REQUIRED-END}
  272. {&DB-REQUIRED-START}
  273. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE REPOS_TABELLE dTables _DB-REQUIRED
  274. PROCEDURE REPOS_TABELLE :
  275. /*------------------------------------------------------------------------------
  276. Purpose:
  277. Parameters: <none>
  278. Notes:
  279. ------------------------------------------------------------------------------*/
  280. { incl/datrepos.i }
  281. END PROCEDURE.
  282. /* _UIB-CODE-BLOCK-END */
  283. &ANALYZE-RESUME
  284. {&DB-REQUIRED-END}
  285. {&DB-REQUIRED-START}
  286. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE SET_FILTER dTables _DB-REQUIRED
  287. PROCEDURE SET_FILTER :
  288. /*------------------------------------------------------------------------------
  289. Purpose:
  290. Parameters: <none>
  291. Notes:
  292. ------------------------------------------------------------------------------*/
  293. { incl/datsetfilter.i }
  294. END PROCEDURE.
  295. /* _UIB-CODE-BLOCK-END */
  296. &ANALYZE-RESUME
  297. {&DB-REQUIRED-END}
  298. {&DB-REQUIRED-START}
  299. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE SET_OPENFLAG dTables _DB-REQUIRED
  300. PROCEDURE SET_OPENFLAG :
  301. /*------------------------------------------------------------------------------
  302. Purpose:
  303. Parameters: <none>
  304. Notes:
  305. ------------------------------------------------------------------------------*/
  306. { incl/datsetopenflag.i }
  307. END PROCEDURE.
  308. /* _UIB-CODE-BLOCK-END */
  309. &ANALYZE-RESUME
  310. {&DB-REQUIRED-END}
  311. {&DB-REQUIRED-START}
  312. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE SET_SORT dTables _DB-REQUIRED
  313. PROCEDURE SET_SORT :
  314. /*------------------------------------------------------------------------------
  315. Purpose:
  316. Parameters: <none>
  317. Notes:
  318. ------------------------------------------------------------------------------*/
  319. { incl/datsetsort.i }
  320. END PROCEDURE.
  321. /* _UIB-CODE-BLOCK-END */
  322. &ANALYZE-RESUME
  323. {&DB-REQUIRED-END}
  324. /* ************************ Function Implementations ***************** */
  325. {&DB-REQUIRED-START}
  326. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION getCurrentRecid dTables _DB-REQUIRED
  327. FUNCTION getCurrentRecid RETURNS RECID
  328. ( /* parameter-definitions */ ) :
  329. /*------------------------------------------------------------------------------
  330. Purpose:
  331. Notes:
  332. ------------------------------------------------------------------------------*/
  333. { incl/datgetcurrentrecid.i }
  334. END FUNCTION.
  335. /* _UIB-CODE-BLOCK-END */
  336. &ANALYZE-RESUME
  337. {&DB-REQUIRED-END}
  338. {&DB-REQUIRED-START}
  339. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION getQueryBuffer dTables _DB-REQUIRED
  340. FUNCTION getQueryBuffer RETURNS HANDLE
  341. ( /* parameter-definitions */ ) :
  342. /*------------------------------------------------------------------------------
  343. Purpose:
  344. Notes:
  345. ------------------------------------------------------------------------------*/
  346. RETURN BUFFER rowObject:HANDLE.
  347. END FUNCTION.
  348. /* _UIB-CODE-BLOCK-END */
  349. &ANALYZE-RESUME
  350. {&DB-REQUIRED-END}
  351. {&DB-REQUIRED-START}
  352. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION openQuery dTables _DB-REQUIRED
  353. FUNCTION openQuery RETURNS LOGICAL
  354. ( /* parameter-definitions */ ) :
  355. /*------------------------------------------------------------------------------
  356. Purpose: Super Override
  357. Notes:
  358. ------------------------------------------------------------------------------*/
  359. DEF VAR Felder AS CHAR NO-UNDO.
  360. DEF VAR Inhalt AS CHAR NO-UNDO.
  361. DEF VAR ix AS INT NO-UNDO.
  362. DEF VAR cFeld AS CHAR NO-UNDO.
  363. /* IF NOT fOpen THEN RETURN FALSE. */
  364. xWhere = ''.
  365. xSort = ''.
  366. xString = ''.
  367. Felder = DYNAMIC-FUNCTION('getForeignFields':U) NO-ERROR.
  368. Inhalt = DYNAMIC-FUNCTION('getForeignValues':U) NO-ERROR.
  369. /* ix = LOOKUP('Feld', Felder, ',') / 2. */
  370. /* cFeld = ENTRY (ix , Inhalt, CHR(01)). */
  371. xWhere = 'Aufko.Firma = ' + QUOTER(Firma) + ' AND '
  372. + 'Aufko.Fak_Art = ' + STRING(1) + ' '.
  373. xSort = 'BY Aufko.Lief_Datum BY Aufko.Tour_Nr1 BY Aufko.Tour_Nr2 BY Aufko.Aufnr'.
  374. /* xString = 'FOR EACH Debop ' + xSort + 'WHERE ' */
  375. /* + 'Debop.Firma = "' + Firma + '" AND ' */
  376. /* + 'Debop.Knr = ' + STRING(Knr) + ' ' */
  377. /* + 'NO-LOCK BY Debop.FakDat DESCENDING INDEXED-REPOSITION '. */
  378. { incl/datopenquery.i }
  379. IF xWhere <> '' THEN DYNAMIC-FUNCTION('setQueryWhere':U , INPUT xWhere ).
  380. IF xString <> '' THEN DYNAMIC-FUNCTION('setQueryString':U, INPUT xString).
  381. IF xSort <> '' THEN DYNAMIC-FUNCTION('setQuerySort':U , INPUT xSort ).
  382. RETURN SUPER( ).
  383. END FUNCTION.
  384. /* _UIB-CODE-BLOCK-END */
  385. &ANALYZE-RESUME
  386. {&DB-REQUIRED-END}