d-labeltexte.w 17 KB

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