d-lotlager.w 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654
  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 LotLager
  30. &SCOPED-DEFINE TabWhere USE-INDEX LotLager-k1 ~
  31. WHERE {&Tabelle}.HoReLager_Id = tRowObject.HoReLager_Id ~
  32. AND {&Tabelle}.Verfall = tRowObject.Verfall ~
  33. AND {&Tabelle}.Lotnummer = tRowObject.Lotnummer
  34. { incl/datdefinition.i }
  35. /* _UIB-CODE-BLOCK-END */
  36. &ANALYZE-RESUME
  37. &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
  38. /* ******************** Preprocessor Definitions ******************** */
  39. &Global-define DATA-LOGIC-PROCEDURE .p
  40. &Scoped-define PROCEDURE-TYPE SmartDataObject
  41. &Scoped-define DB-AWARE yes
  42. &Scoped-define ADM-SUPPORTED-LINKS Data-Source,Data-Target,Navigation-Target,Update-Target,Commit-Target,Filter-Target
  43. /* Db-Required definitions. */
  44. &IF DEFINED(DB-REQUIRED) = 0 &THEN
  45. &GLOBAL-DEFINE DB-REQUIRED TRUE
  46. &ENDIF
  47. &GLOBAL-DEFINE DB-REQUIRED-START &IF {&DB-REQUIRED} &THEN
  48. &GLOBAL-DEFINE DB-REQUIRED-END &ENDIF
  49. &Scoped-define QUERY-NAME Query-Main
  50. /* Internal Tables (found by Frame, Query & Browse Queries) */
  51. &Scoped-define INTERNAL-TABLES LotLager
  52. /* Definitions for QUERY Query-Main */
  53. &Scoped-Define ENABLED-FIELDS Firma Lager Artnr Inhalt Jahr Bestand Eingang Verfall Lotnummer~
  54. HoReLager_Id ProdNummer Barcode Lotnummer_2 Lagerort LagerPlatzBestand
  55. &Scoped-define ENABLED-FIELDS-IN-LotLager Firma Lager Artnr Inhalt Jahr ~
  56. Bestand Eingang Verfall Lotnummer HoReLager_Id ProdNummer Barcode ~
  57. Lotnummer_2
  58. &Scoped-Define DATA-FIELDS Firma Lager Artnr Inhalt Jahr Bestand Eingang Verfall Lotnummer~
  59. HoReLager_Id ProdNummer Barcode Lotnummer_2 Lagerort LagerPlatzBestand
  60. &Scoped-define DATA-FIELDS-IN-LotLager Firma Lager Artnr Inhalt Jahr ~
  61. Bestand Eingang Verfall Lotnummer HoReLager_Id ProdNummer Barcode ~
  62. Lotnummer_2
  63. &Scoped-Define MANDATORY-FIELDS
  64. &Scoped-Define APPLICATION-SERVICE
  65. &Scoped-Define ASSIGN-LIST
  66. &Scoped-Define DATA-FIELD-DEFS "d-lotlager.i"
  67. &Scoped-Define DATA-TABLE-NO-UNDO NO-UNDO
  68. &Scoped-define QUERY-STRING-Query-Main FOR EACH LotLager NO-LOCK INDEXED-REPOSITION
  69. {&DB-REQUIRED-START}
  70. &Scoped-define OPEN-QUERY-Query-Main OPEN QUERY Query-Main FOR EACH LotLager NO-LOCK INDEXED-REPOSITION.
  71. {&DB-REQUIRED-END}
  72. &Scoped-define TABLES-IN-QUERY-Query-Main LotLager
  73. &Scoped-define FIRST-TABLE-IN-QUERY-Query-Main LotLager
  74. /* Custom List Definitions */
  75. /* List-1,List-2,List-3,List-4,List-5,List-6 */
  76. /* _UIB-PREPROCESSOR-BLOCK-END */
  77. &ANALYZE-RESUME
  78. /* ************************ Function Prototypes ********************** */
  79. {&DB-REQUIRED-START}
  80. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION-FORWARD getCurrentRecid dTables _DB-REQUIRED
  81. FUNCTION getCurrentRecid RETURNS RECID
  82. ( /* parameter-definitions */ ) FORWARD.
  83. /* _UIB-CODE-BLOCK-END */
  84. &ANALYZE-RESUME
  85. {&DB-REQUIRED-END}
  86. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION-FORWARD getLagerort dTables
  87. FUNCTION getLagerort RETURNS CHARACTER
  88. ( ) FORWARD.
  89. /* _UIB-CODE-BLOCK-END */
  90. &ANALYZE-RESUME
  91. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION-FORWARD getLagerPlatzBestand dTables
  92. FUNCTION getLagerPlatzBestand RETURNS INTEGER
  93. ( ) FORWARD.
  94. /* _UIB-CODE-BLOCK-END */
  95. &ANALYZE-RESUME
  96. {&DB-REQUIRED-START}
  97. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION-FORWARD getQueryBuffer dTables _DB-REQUIRED
  98. FUNCTION getQueryBuffer RETURNS HANDLE
  99. ( /* parameter-definitions */ ) FORWARD.
  100. /* _UIB-CODE-BLOCK-END */
  101. &ANALYZE-RESUME
  102. {&DB-REQUIRED-END}
  103. {&DB-REQUIRED-START}
  104. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION-FORWARD openQuery dTables _DB-REQUIRED
  105. FUNCTION openQuery RETURNS LOGICAL
  106. ( /* parameter-definitions */ ) FORWARD.
  107. /* _UIB-CODE-BLOCK-END */
  108. &ANALYZE-RESUME
  109. {&DB-REQUIRED-END}
  110. /* *********************** Control Definitions ********************** */
  111. {&DB-REQUIRED-START}
  112. /* Query definitions */
  113. &ANALYZE-SUSPEND
  114. DEFINE QUERY Query-Main FOR
  115. LotLager SCROLLING.
  116. &ANALYZE-RESUME
  117. {&DB-REQUIRED-END}
  118. /* ************************ Frame Definitions *********************** */
  119. /* *********************** Procedure Settings ************************ */
  120. &ANALYZE-SUSPEND _PROCEDURE-SETTINGS
  121. /* Settings for THIS-PROCEDURE
  122. Type: SmartDataObject
  123. Allow: Query
  124. Frames: 0
  125. Add Fields to: Neither
  126. Other Settings: PERSISTENT-ONLY COMPILE APPSERVER DB-AWARE
  127. */
  128. /* This procedure should always be RUN PERSISTENT. Report the error, */
  129. /* then cleanup and return. */
  130. IF NOT THIS-PROCEDURE:PERSISTENT THEN
  131. DO:
  132. MESSAGE "{&FILE-NAME} should only be RUN PERSISTENT.":U
  133. VIEW-AS ALERT-BOX ERROR BUTTONS OK.
  134. RETURN.
  135. END.
  136. &ANALYZE-RESUME _END-PROCEDURE-SETTINGS
  137. /* ************************* Create Window ************************** */
  138. &ANALYZE-SUSPEND _CREATE-WINDOW
  139. /* DESIGN Window definition (used by the UIB)
  140. CREATE WINDOW dTables ASSIGN
  141. HEIGHT = 1.62
  142. WIDTH = 46.6.
  143. /* END WINDOW DEFINITION */
  144. */
  145. &ANALYZE-RESUME
  146. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB dTables
  147. /* ************************* Included-Libraries *********************** */
  148. {src/adm2/data.i}
  149. /* _UIB-CODE-BLOCK-END */
  150. &ANALYZE-RESUME
  151. /* *********** Runtime Attributes and AppBuilder Settings *********** */
  152. &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES
  153. /* SETTINGS FOR WINDOW dTables
  154. VISIBLE,,RUN-PERSISTENT */
  155. /* _RUN-TIME-ATTRIBUTES-END */
  156. &ANALYZE-RESUME
  157. /* Setting information for Queries and Browse Widgets fields */
  158. &ANALYZE-SUSPEND _QUERY-BLOCK QUERY Query-Main
  159. /* Query rebuild information for SmartDataObject Query-Main
  160. _TblList = "AnaDat.LotLager"
  161. _Options = "NO-LOCK INDEXED-REPOSITION"
  162. _FldNameList[1] > AnaDat.LotLager.Firma
  163. "Firma" "Firma" ? ? "character" ? ? ? ? ? ? yes ? no 5 yes ?
  164. _FldNameList[2] > AnaDat.LotLager.Lager
  165. "Lager" "Lager" ? ? "integer" ? ? ? ? ? ? yes ? no 5.4 yes ?
  166. _FldNameList[3] > AnaDat.LotLager.Artnr
  167. "Artnr" "Artnr" ? ? "integer" ? ? ? ? ? ? yes ? no 7.2 yes ?
  168. _FldNameList[4] > AnaDat.LotLager.Inhalt
  169. "Inhalt" "Inhalt" ? ? "integer" ? ? ? ? ? ? yes ? no 5.2 yes ?
  170. _FldNameList[5] > AnaDat.LotLager.Jahr
  171. "Jahr" "Jahr" ? ? "integer" ? ? ? ? ? ? yes ? no 4.8 yes ?
  172. _FldNameList[6] > AnaDat.LotLager.Bestand
  173. "Bestand" "Bestand" ? ? "decimal" ? ? ? ? ? ? yes ? no 7.8 yes ?
  174. _FldNameList[7] > AnaDat.LotLager.Eingang
  175. "Eingang" "Eingang" ? ? "date" ? ? ? ? ? ? yes ? no 10.8 yes ?
  176. _FldNameList[8] > AnaDat.LotLager.Verfall
  177. "Verfall" "Verfall" ? ? "date" ? ? ? ? ? ? yes ? no 10.8 yes ?
  178. _FldNameList[9] > AnaDat.LotLager.Lotnummer
  179. "Lotnummer" "Lotnummer" ? ? "character" ? ? ? ? ? ? yes ? no 20 yes ?
  180. _FldNameList[10] > AnaDat.LotLager.HoReLager_Id
  181. "HoReLager_Id" "HoReLager_Id" ? ? "integer" ? ? ? ? ? ? yes ? no 14 yes ?
  182. _FldNameList[11] > AnaDat.LotLager.ProdNummer
  183. "ProdNummer" "ProdNummer" ? ? "character" ? ? ? ? ? ? yes ? no 20 yes ?
  184. _FldNameList[12] > AnaDat.LotLager.Barcode
  185. "Barcode" "Barcode" ? ? "character" ? ? ? ? ? ? yes ? no 60 yes ?
  186. _FldNameList[13] > AnaDat.LotLager.Lotnummer_2
  187. "Lotnummer_2" "Lotnummer_2" ? ? "character" ? ? ? ? ? ? yes ? no 20 yes ?
  188. _FldNameList[14] > "_<CALC>"
  189. "DYNAMIC-FUNCTION('getLagerort':U IN THIS-PROCEDURE)" "Lagerort" "Lagerort" "x(14)" "character" ? ? ? ? ? ? yes ? no 14 no ?
  190. _FldNameList[15] > "_<CALC>"
  191. "DYNAMIC-FUNCTION('getLagerplatzBestand':U IN THIS-PROCEDURE)" "LagerPlatzBestand" "Best. Platz" "->,>>>,>>9" "Integer" ? ? ? ? ? ? yes ? no 10.2 no ?
  192. _Design-Parent is WINDOW dTables @ ( 1.14 , 2.6 )
  193. */ /* QUERY Query-Main */
  194. &ANALYZE-RESUME
  195. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK dTables
  196. /* *************************** Main Block *************************** */
  197. { incl/datmainblock.i }
  198. &IF DEFINED(UIB_IS_RUNNING) <> 0 &THEN
  199. RUN initializeObject.
  200. &ENDIF
  201. /* _UIB-CODE-BLOCK-END */
  202. &ANALYZE-RESUME
  203. /* ********************** Internal Procedures *********************** */
  204. {&DB-REQUIRED-START}
  205. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE DATA.CALCULATE dTables DATA.CALCULATE _DB-REQUIRED
  206. PROCEDURE DATA.CALCULATE :
  207. /*------------------------------------------------------------------------------
  208. Purpose: Calculate all the Calculated Expressions found in the
  209. SmartDataObject.
  210. Parameters: <none>
  211. ------------------------------------------------------------------------------*/
  212. ASSIGN
  213. rowObject.Lagerort = (DYNAMIC-FUNCTION('getLagerort':U IN THIS-PROCEDURE))
  214. rowObject.LagerPlatzBestand = (DYNAMIC-FUNCTION('getLagerplatzBestand':U IN THIS-PROCEDURE))
  215. .
  216. END PROCEDURE.
  217. /* _UIB-CODE-BLOCK-END */
  218. &ANALYZE-RESUME
  219. {&DB-REQUIRED-END}
  220. {&DB-REQUIRED-START}
  221. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE dataAvailable dTables _DB-REQUIRED
  222. PROCEDURE dataAvailable :
  223. /*------------------------------------------------------------------------------
  224. Purpose: Super Override
  225. Parameters:
  226. Notes:
  227. ------------------------------------------------------------------------------*/
  228. { incl/datdataavailable.i }
  229. END PROCEDURE.
  230. /* _UIB-CODE-BLOCK-END */
  231. &ANALYZE-RESUME
  232. {&DB-REQUIRED-END}
  233. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI dTables _DEFAULT-DISABLE
  234. PROCEDURE disable_UI :
  235. /*------------------------------------------------------------------------------
  236. Purpose: DISABLE the User Interface
  237. Parameters: <none>
  238. Notes: Here we clean-up the user-interface by deleting
  239. dynamic widgets we have created and/or hide
  240. frames. This procedure is usually called when
  241. we are ready to "clean-up" after running.
  242. ------------------------------------------------------------------------------*/
  243. /* Hide all frames. */
  244. IF THIS-PROCEDURE:PERSISTENT THEN DELETE PROCEDURE THIS-PROCEDURE.
  245. END PROCEDURE.
  246. /* _UIB-CODE-BLOCK-END */
  247. &ANALYZE-RESUME
  248. {&DB-REQUIRED-START}
  249. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE INAKTIVIEREN dTables _DB-REQUIRED
  250. PROCEDURE INAKTIVIEREN :
  251. /*------------------------------------------------------------------------------
  252. Purpose:
  253. Parameters: <none>
  254. Notes:
  255. ------------------------------------------------------------------------------*/
  256. { incl/datinaktivieren.i }
  257. END PROCEDURE.
  258. /* _UIB-CODE-BLOCK-END */
  259. &ANALYZE-RESUME
  260. {&DB-REQUIRED-END}
  261. {&DB-REQUIRED-START}
  262. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE initializeObject dTables _DB-REQUIRED
  263. PROCEDURE initializeObject :
  264. /*------------------------------------------------------------------------------
  265. Purpose: Super Override
  266. Parameters:
  267. Notes:
  268. ------------------------------------------------------------------------------*/
  269. { incl/datinitialize.i }
  270. END PROCEDURE.
  271. /* _UIB-CODE-BLOCK-END */
  272. &ANALYZE-RESUME
  273. {&DB-REQUIRED-END}
  274. {&DB-REQUIRED-START}
  275. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE REAKTIVIEREN dTables _DB-REQUIRED
  276. PROCEDURE REAKTIVIEREN :
  277. /*------------------------------------------------------------------------------
  278. Purpose:
  279. Parameters: <none>
  280. Notes:
  281. ------------------------------------------------------------------------------*/
  282. { incl/datreaktivieren.i }
  283. END PROCEDURE.
  284. /* _UIB-CODE-BLOCK-END */
  285. &ANALYZE-RESUME
  286. {&DB-REQUIRED-END}
  287. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE REFRESH_LOTLAGER dTables
  288. PROCEDURE REFRESHLAGER:
  289. /*------------------------------------------------------------------------------
  290. Purpose:
  291. Notes:
  292. ------------------------------------------------------------------------------*/
  293. DEFINE VARIABLE cRowid AS CHARACTER NO-UNDO.
  294. DEFINE VARIABLE rLotLager AS RECID NO-UNDO.
  295. DEFINE BUFFER bLotLager FOR LotLager.
  296. rLotLager = DYNAMIC-FUNCTION ('getCurrentRecid':U) NO-ERROR.
  297. IF rLotLager = ? OR
  298. rLotLager = 0 THEN RETURN.
  299. FIND bLotLager NO-LOCK WHERE RECID(bLotLager) = rLotLager.
  300. cRowid = STRING(ROWID(bLotLager)).
  301. DYNAMIC-FUNCTION ('closeQuery':U).
  302. DYNAMIC-FUNCTION ('openQuery':U).
  303. DYNAMIC-FUNCTION ('fetchRowIdent':U, cRowid, ?).
  304. END PROCEDURE.
  305. /* _UIB-CODE-BLOCK-END */
  306. &ANALYZE-RESUME
  307. {&DB-REQUIRED-START}
  308. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE REPOS_TABELLE dTables _DB-REQUIRED
  309. PROCEDURE REPOS_TABELLE :
  310. /*------------------------------------------------------------------------------
  311. Purpose:
  312. Parameters: <none>
  313. Notes:
  314. ------------------------------------------------------------------------------*/
  315. { incl/datrepos.i }
  316. END PROCEDURE.
  317. /* _UIB-CODE-BLOCK-END */
  318. &ANALYZE-RESUME
  319. {&DB-REQUIRED-END}
  320. {&DB-REQUIRED-START}
  321. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE SET_FILTER dTables _DB-REQUIRED
  322. PROCEDURE SET_FILTER :
  323. /*------------------------------------------------------------------------------
  324. Purpose:
  325. Parameters: <none>
  326. Notes:
  327. ------------------------------------------------------------------------------*/
  328. { incl/datsetfilter.i }
  329. END PROCEDURE.
  330. /* _UIB-CODE-BLOCK-END */
  331. &ANALYZE-RESUME
  332. {&DB-REQUIRED-END}
  333. {&DB-REQUIRED-START}
  334. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE SET_OPENFLAG dTables _DB-REQUIRED
  335. PROCEDURE SET_OPENFLAG :
  336. /*------------------------------------------------------------------------------
  337. Purpose:
  338. Parameters: <none>
  339. Notes:
  340. ------------------------------------------------------------------------------*/
  341. { incl/datsetopenflag.i }
  342. END PROCEDURE.
  343. /* _UIB-CODE-BLOCK-END */
  344. &ANALYZE-RESUME
  345. {&DB-REQUIRED-END}
  346. {&DB-REQUIRED-START}
  347. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE SET_SORT dTables _DB-REQUIRED
  348. PROCEDURE SET_SORT :
  349. /*------------------------------------------------------------------------------
  350. Purpose:
  351. Parameters: <none>
  352. Notes:
  353. ------------------------------------------------------------------------------*/
  354. { incl/datsetsort.i }
  355. END PROCEDURE.
  356. /* _UIB-CODE-BLOCK-END */
  357. &ANALYZE-RESUME
  358. {&DB-REQUIRED-END}
  359. /* ************************ Function Implementations ***************** */
  360. {&DB-REQUIRED-START}
  361. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION getCurrentRecid dTables _DB-REQUIRED
  362. FUNCTION getCurrentRecid RETURNS RECID
  363. ( /* parameter-definitions */ ) :
  364. /*------------------------------------------------------------------------------
  365. Purpose:
  366. Notes:
  367. ------------------------------------------------------------------------------*/
  368. { incl/datgetcurrentrecid.i }
  369. END FUNCTION.
  370. /* _UIB-CODE-BLOCK-END */
  371. &ANALYZE-RESUME
  372. {&DB-REQUIRED-END}
  373. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION getLagerort dTables
  374. FUNCTION getLagerort RETURNS CHARACTER
  375. ( ):
  376. /*------------------------------------------------------------------------------
  377. Purpose:
  378. Notes:
  379. ------------------------------------------------------------------------------*/
  380. DEFINE VARIABLE cRetVal AS CHARACTER NO-UNDO.
  381. FIND FIRST HoReLager NO-LOCK
  382. WHERE HoReLager.HoReLager_Id = LotLager.HoReLager_Id NO-ERROR.
  383. cRetVal = (IF AVAILABLE HoReLager THEN HoReLager.cSort ELSE '').
  384. RELEASE HoReLager.
  385. RETURN cRetVal.
  386. END FUNCTION.
  387. /* _UIB-CODE-BLOCK-END */
  388. &ANALYZE-RESUME
  389. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION getLagerPlatzBestand dTables
  390. FUNCTION getLagerPlatzBestand RETURNS INTEGER
  391. ( ):
  392. /*------------------------------------------------------------------------------
  393. Purpose:
  394. Notes:
  395. ------------------------------------------------------------------------------*/
  396. DEFINE VARIABLE iBestand AS INTEGER NO-UNDO INIT 0.
  397. FOR EACH HoReLager NO-LOCK
  398. WHERE HoReLager.Firma = Firma
  399. AND HoReLager.cSort = rowObject.Lagerort:
  400. iBestand = iBestand + HoReLager.Bestand.
  401. END.
  402. RETURN iBestand.
  403. END FUNCTION.
  404. /* _UIB-CODE-BLOCK-END */
  405. &ANALYZE-RESUME
  406. {&DB-REQUIRED-START}
  407. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION getQueryBuffer dTables _DB-REQUIRED
  408. FUNCTION getQueryBuffer RETURNS HANDLE
  409. ( /* parameter-definitions */ ) :
  410. /*------------------------------------------------------------------------------
  411. Purpose:
  412. Notes:
  413. ------------------------------------------------------------------------------*/
  414. RETURN BUFFER rowObject:HANDLE.
  415. END FUNCTION.
  416. /* _UIB-CODE-BLOCK-END */
  417. &ANALYZE-RESUME
  418. {&DB-REQUIRED-END}
  419. {&DB-REQUIRED-START}
  420. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION openQuery dTables _DB-REQUIRED
  421. FUNCTION openQuery RETURNS LOGICAL
  422. ( /* parameter-definitions */ ) :
  423. /*------------------------------------------------------------------------------
  424. Purpose: Super Override
  425. Notes:
  426. ------------------------------------------------------------------------------*/
  427. DEF VAR Felder AS CHAR NO-UNDO.
  428. DEF VAR Inhalt AS CHAR NO-UNDO.
  429. DEF VAR ix AS INT NO-UNDO.
  430. DEF VAR cFeld AS CHAR NO-UNDO.
  431. /* IF NOT fOpen THEN RETURN FALSE. */
  432. xWhere = ''.
  433. xSort = ''.
  434. xString = ''.
  435. Felder = DYNAMIC-FUNCTION('getForeignFields':U) NO-ERROR.
  436. Inhalt = DYNAMIC-FUNCTION('getForeignValues':U) NO-ERROR.
  437. /* ix = LOOKUP('Feld', Felder, ',') / 2. */
  438. /* cFeld = ENTRY (ix , Inhalt, CHR(01)). */
  439. /* xWhere = 'Aufko.Firma = ' + QUOTER(Firma) + ' AND ' */
  440. /* + 'Aufko.Auf_Sta = ' + STRING(Auf_Sta) + ' '. */
  441. /* xString = 'FOR EACH Debop ' + xSort + 'WHERE ' */
  442. /* + 'Debop.Firma = "' + Firma + '" AND ' */
  443. /* + 'Debop.Knr = ' + STRING(Knr) + ' ' */
  444. /* + 'NO-LOCK BY Debop.FakDat DESCENDING INDEXED-REPOSITION '. */
  445. { incl/datopenquery.i }
  446. IF xWhere <> '' THEN DYNAMIC-FUNCTION('setQueryWhere':U , INPUT xWhere ).
  447. IF xSort <> '' THEN DYNAMIC-FUNCTION('setQuerySort':U , INPUT xSort ).
  448. IF xString <> '' THEN DYNAMIC-FUNCTION('setQueryString':U, INPUT xString).
  449. RETURN SUPER( ).
  450. END FUNCTION.
  451. /* _UIB-CODE-BLOCK-END */
  452. &ANALYZE-RESUME
  453. {&DB-REQUIRED-END}