b-adresse.w 28 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862
  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. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS bTableWin
  8. /*------------------------------------------------------------------------
  9. File: adm2\src\browser.w
  10. Description: SmartDataBrowser Object
  11. Input Parameters:
  12. <none>
  13. Output Parameters:
  14. <none>
  15. ------------------------------------------------------------------------*/
  16. /* This .W file was created with the Progress AppBuilder. */
  17. /*----------------------------------------------------------------------*/
  18. /* Create an unnamed pool to store all the widgets created
  19. by this procedure. This is a good default which ASsures
  20. that this procedure's triggers and internal procedures
  21. will execute in this procedure's storage, and that proper
  22. cleanup will occur on deletion of the procedure. */
  23. CREATE WIDGET-POOL.
  24. /* *************************** Definitions ************************** */
  25. /* Parameters Definitions --- */
  26. /* Local Variable Definitions --- */
  27. DEF VAR Farbe AS INT NO-UNDO.
  28. DEF VAR BGNormal AS INT NO-UNDO.
  29. DEF VAR BGFreigabe AS INT NO-UNDO.
  30. DEF VAR BGDelete AS INT NO-UNDO.
  31. DEF VAR RetValue AS CHAR NO-UNDO.
  32. DEF VAR Firma AS CHAR NO-UNDO.
  33. DEF VAR AdFirma AS CHAR NO-UNDO.
  34. DEF TEMP-TABLE tExcelListe
  35. FIELD Firma AS CHAR
  36. FIELD Knr AS INT
  37. FIELD Firma1 AS CHAR
  38. FIELD Firma2 AS CHAR
  39. FIELD Name AS CHAR
  40. FIELD Vorname AS CHAR
  41. FIELD Zusatz1 AS CHAR
  42. FIELD Zusatz2 AS CHAR
  43. FIELD Strasse AS CHAR
  44. FIELD Postfach AS CHAR
  45. FIELD Lkz AS CHAR
  46. FIELD Plz AS CHAR
  47. FIELD Ort AS CHAR
  48. FIELD BriefAnr AS CHAR
  49. FIELD Anzeig_br AS CHAR
  50. FIELD Bem AS CHAR
  51. FIELD AdrArt AS CHAR
  52. FIELD Funktion AS CHAR
  53. FIELD Aktiv AS LOG
  54. FIELD Anrcd AS INT
  55. FIELD AnschrFix AS LOG
  56. FIELD Homepage AS CHAR
  57. FIELD Mail AS CHAR
  58. FIELD Natel AS CHAR
  59. FIELD Sprcd AS INT
  60. FIELD Suchbe AS CHAR
  61. FIELD Tel-1 AS CHAR
  62. FIELD Tel-2 AS CHAR
  63. FIELD Tel-3 AS CHAR
  64. FIELD Tel-4 AS CHAR
  65. FIELD Titel AS CHAR
  66. FIELD Cd01 AS CHAR
  67. FIELD Cd02 AS CHAR
  68. FIELD Cd03 AS CHAR
  69. FIELD Cd04 AS CHAR
  70. FIELD Cd05 AS CHAR
  71. FIELD Cd06 AS CHAR
  72. FIELD Cd07 AS CHAR
  73. FIELD Cd08 AS CHAR
  74. FIELD Cd09 AS CHAR
  75. FIELD Cd10 AS CHAR
  76. FIELD Cd11 AS CHAR
  77. FIELD Cd12 AS CHAR
  78. FIELD Cd13 AS CHAR
  79. FIELD Cd14 AS CHAR
  80. FIELD Cd15 AS CHAR
  81. FIELD ErfDat AS DATE FORMAT "99.99.9999"
  82. FIELD ErfSb AS CHAR
  83. FIELD MutDat AS DATE FORMAT "99.99.9999"
  84. FIELD MutSb AS CHAR
  85. FIELD ABC_Grp AS INT
  86. FIELD Abh_Rab_Art AS INT
  87. FIELD Abh_Rab_Wert AS DEC DECIMALS 4
  88. FIELD Ablad_Vor AS INT
  89. FIELD Ablad_Vor_Text AS CHAR
  90. FIELD AKonto AS DEC
  91. FIELD Auf_Rab_Art AS INT
  92. FIELD Auf_Rab_Wert AS DEC DECIMALS 4
  93. FIELD Auf_Text AS CHAR
  94. FIELD Avis AS INT
  95. FIELD Bar_Text AS CHAR
  96. FIELD Bemerk AS CHAR
  97. FIELD BESR_Art AS INT
  98. FIELD Bier_Cd AS INT
  99. FIELD Bonus_Grp AS INT
  100. FIELD esAktiv AS LOG
  101. FIELD esBenutzer AS CHAR
  102. FIELD esMail AS CHAR
  103. FIELD esPasswort AS CHAR
  104. FIELD Fak_Art AS INT
  105. FIELD Fak_FTnr AS INT
  106. FIELD Fak_KTnr AS INT
  107. FIELD Filiale AS INT
  108. FIELD FRW AS CHA
  109. FIELD Geb_Rg AS LOG
  110. FIELD KnrFak AS INT
  111. FIELD KnrLie AS INT
  112. FIELD Kond AS INT
  113. FIELD Konto AS CHAR
  114. FIELD Kred_Lim AS INT
  115. FIELD Kred_Lim_Vers AS INT
  116. FIELD Ku_Grp AS INT
  117. FIELD Lager AS INT
  118. FIELD LetztVK AS DATE FORMAT "99.99.9999"
  119. FIELD Lief_Art AS INT
  120. FIELD Lief_Bed AS INT
  121. FIELD Mahn AS INT
  122. FIELD MWSt AS INT
  123. FIELD MWST_Nr AS CHAR
  124. FIELD Passant AS LOG
  125. FIELD Preis_Grp AS INT
  126. FIELD Rab_Grp AS INT
  127. FIELD Region AS INT
  128. FIELD Saldo AS DEC
  129. FIELD Saldo_FRW AS DEC
  130. FIELD Skonto AS DEC
  131. FIELD Subverband_Grp AS INT
  132. FIELD Tour_Nr1 AS INT
  133. FIELD Tour_Nr2 AS CHAR
  134. FIELD Verband_Grp AS INT
  135. FIELD Verband_Nr AS CHAR
  136. FIELD Vertr AS INT
  137. FIELD Wirt_So AS INT
  138. FIELD Wirt_So_Text AS CHAR
  139. FIELD Zei_Rab_Art AS INT
  140. FIELD Zei_Rab_Wert AS DEC DECIMALS 4
  141. FIELD Zuschl_Art AS INT
  142. FIELD Zuschl_Betr AS DEC DECIMALS 4
  143. FIELD Zuschl_Verr AS DEC DECIMALS 4
  144. FIELD Zuschl_Wert AS DEC DECIMALS 4
  145. .
  146. /* _UIB-CODE-BLOCK-END */
  147. &ANALYZE-RESUME
  148. &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
  149. /* ******************** Preprocessor Definitions ******************** */
  150. &Scoped-define PROCEDURE-TYPE SmartDataBrowser
  151. &Scoped-define DB-AWARE no
  152. &Scoped-define ADM-SUPPORTED-LINKS TableIO-Target,Data-Target,Update-Source
  153. /* Include file with RowObject temp-table definition */
  154. &Scoped-define DATA-FIELD-DEFS "d-adresse.i"
  155. /* Name of designated FRAME-NAME and/or first browse and/or first query */
  156. &Scoped-define FRAME-NAME F-Main
  157. &Scoped-define BROWSE-NAME br_table
  158. /* Internal Tables (found by Frame, Query & Browse Queries) */
  159. &Scoped-define INTERNAL-TABLES rowObject
  160. /* Definitions for BROWSE br_table */
  161. &Scoped-define FIELDS-IN-QUERY-br_table rowObject.Knr rowObject.Suchbe ~
  162. rowObject.Anzeig_br rowObject.Firma1 rowObject.Name rowObject.Strasse ~
  163. rowObject.Lkz rowObject.Plz rowObject.Ort rowObject.Aktiv
  164. &Scoped-define ENABLED-FIELDS-IN-QUERY-br_table
  165. &Scoped-define QUERY-STRING-br_table FOR EACH rowObject NO-LOCK INDEXED-REPOSITION
  166. &Scoped-define OPEN-QUERY-br_table OPEN QUERY br_table FOR EACH rowObject NO-LOCK INDEXED-REPOSITION.
  167. &Scoped-define TABLES-IN-QUERY-br_table rowObject
  168. &Scoped-define FIRST-TABLE-IN-QUERY-br_table rowObject
  169. /* Definitions for FRAME F-Main */
  170. /* Standard List Definitions */
  171. &Scoped-Define ENABLED-OBJECTS RECT-3 br_table
  172. /* Custom List Definitions */
  173. /* List-1,List-2,List-3,List-4,List-5,List-6 */
  174. /* _UIB-PREPROCESSOR-BLOCK-END */
  175. &ANALYZE-RESUME
  176. /* *********************** Control Definitions ********************** */
  177. /* Menu Definitions */
  178. DEFINE MENU POPUP-MENU-br_table
  179. MENU-ITEM X_GrosseListe LABEL "Grosse Excel-Liste (inkl. Debitor)".
  180. /* Definitions of the field level widgets */
  181. DEFINE RECTANGLE RECT-3
  182. EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
  183. SIZE 134 BY 8.57.
  184. /* Query definitions */
  185. &ANALYZE-SUSPEND
  186. DEFINE TEMP-TABLE RowObject NO-UNDO
  187. {{&DATA-FIELD-DEFS}}
  188. {src/adm2/robjflds.i}.
  189. DEFINE QUERY br_table FOR
  190. rowObject SCROLLING.
  191. &ANALYZE-RESUME
  192. /* Browse definitions */
  193. DEFINE BROWSE br_table
  194. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _DISPLAY-FIELDS br_table bTableWin _STRUCTURED
  195. QUERY br_table NO-LOCK DISPLAY
  196. rowObject.Knr FORMAT "999999":U
  197. rowObject.Suchbe FORMAT "X(20)":U WIDTH 12.6
  198. rowObject.Anzeig_br COLUMN-LABEL "Adresse" FORMAT "x(75)":U
  199. rowObject.Firma1 COLUMN-LABEL "Firma" FORMAT "x(35)":U
  200. rowObject.Name FORMAT "x(35)":U
  201. rowObject.Strasse FORMAT "X(30)":U
  202. rowObject.Lkz FORMAT "X(3)":U WIDTH 4
  203. rowObject.Plz FORMAT "X(8)":U
  204. rowObject.Ort FORMAT "X(30)":U
  205. rowObject.Aktiv FORMAT "J/N":U
  206. /* _UIB-CODE-BLOCK-END */
  207. &ANALYZE-RESUME
  208. WITH NO-ASSIGN NO-AUTO-VALIDATE NO-ROW-MARKERS SEPARATORS SIZE 132 BY 8.1
  209. BGCOLOR 15 .
  210. /* ************************ Frame Definitions *********************** */
  211. DEFINE FRAME F-Main
  212. br_table AT ROW 1.48 COL 3
  213. RECT-3 AT ROW 1.24 COL 2 WIDGET-ID 2
  214. WITH 1 DOWN NO-BOX KEEP-TAB-ORDER OVERLAY
  215. SIDE-LABELS NO-UNDERLINE THREE-D
  216. AT COL 1 ROW 1 SCROLLABLE .
  217. /* *********************** Procedure Settings ************************ */
  218. &ANALYZE-SUSPEND _PROCEDURE-SETTINGS
  219. /* Settings for THIS-PROCEDURE
  220. Type: SmartDataBrowser
  221. Data Source: "d-adresse.w"
  222. Allow: Basic,Browse
  223. Frames: 1
  224. Add Fields to: Neither
  225. Other Settings: PERSISTENT-ONLY COMPILE
  226. */
  227. /* This procedure should always be RUN PERSISTENT. Report the error, */
  228. /* then cleanup and return. */
  229. IF NOT THIS-PROCEDURE:PERSISTENT THEN DO:
  230. MESSAGE "{&FILE-NAME} should only be RUN PERSISTENT.":U
  231. VIEW-AS ALERT-BOX ERROR BUTTONS OK.
  232. RETURN.
  233. END.
  234. &ANALYZE-RESUME _END-PROCEDURE-SETTINGS
  235. /* ************************* Create Window ************************** */
  236. &ANALYZE-SUSPEND _CREATE-WINDOW
  237. /* DESIGN Window definition (used by the UIB)
  238. CREATE WINDOW bTableWin ASSIGN
  239. HEIGHT = 9.05
  240. WIDTH = 136.
  241. /* END WINDOW DEFINITION */
  242. */
  243. &ANALYZE-RESUME
  244. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB bTableWin
  245. /* ************************* Included-Libraries *********************** */
  246. {src/adm2/browser.i}
  247. /* _UIB-CODE-BLOCK-END */
  248. &ANALYZE-RESUME
  249. /* *********** Runtime Attributes and AppBuilder Settings *********** */
  250. &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES
  251. /* SETTINGS FOR WINDOW bTableWin
  252. NOT-VISIBLE,,RUN-PERSISTENT */
  253. /* SETTINGS FOR FRAME F-Main
  254. NOT-VISIBLE FRAME-NAME Size-to-Fit */
  255. /* BROWSE-TAB br_table RECT-3 F-Main */
  256. ASSIGN
  257. FRAME F-Main:SCROLLABLE = FALSE
  258. FRAME F-Main:HIDDEN = TRUE.
  259. ASSIGN
  260. br_table:POPUP-MENU IN FRAME F-Main = MENU POPUP-MENU-br_table:HANDLE
  261. br_table:COLUMN-RESIZABLE IN FRAME F-Main = TRUE
  262. br_table:COLUMN-MOVABLE IN FRAME F-Main = TRUE.
  263. ASSIGN
  264. rowObject.Aktiv:VISIBLE IN BROWSE br_table = FALSE.
  265. /* _RUN-TIME-ATTRIBUTES-END */
  266. &ANALYZE-RESUME
  267. /* Setting information for Queries and Browse Widgets fields */
  268. &ANALYZE-SUSPEND _QUERY-BLOCK BROWSE br_table
  269. /* Query rebuild information for BROWSE br_table
  270. _TblList = "rowObject"
  271. _Options = "NO-LOCK INDEXED-REPOSITION"
  272. _FldNameList[1] > _<SDO>.rowObject.Knr
  273. "rowObject.Knr" ? ? "integer" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  274. _FldNameList[2] > _<SDO>.rowObject.Suchbe
  275. "rowObject.Suchbe" ? ? "character" ? ? ? ? ? ? no "?" no no "12.6" yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  276. _FldNameList[3] > _<SDO>.rowObject.Anzeig_br
  277. "rowObject.Anzeig_br" "Adresse" ? "character" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  278. _FldNameList[4] > _<SDO>.rowObject.Firma1
  279. "rowObject.Firma1" "Firma" ? "character" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  280. _FldNameList[5] > _<SDO>.rowObject.Name
  281. "rowObject.Name" ? ? "character" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  282. _FldNameList[6] > _<SDO>.rowObject.Strasse
  283. "rowObject.Strasse" ? ? "character" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  284. _FldNameList[7] > _<SDO>.rowObject.Lkz
  285. "rowObject.Lkz" ? ? "character" ? ? ? ? ? ? no "?" no no "4" yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  286. _FldNameList[8] > _<SDO>.rowObject.Plz
  287. "rowObject.Plz" ? ? "character" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  288. _FldNameList[9] > _<SDO>.rowObject.Ort
  289. "rowObject.Ort" ? ? "character" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  290. _FldNameList[10] > _<SDO>.rowObject.Aktiv
  291. "rowObject.Aktiv" ? ? "logical" ? ? ? ? ? ? no ? no no ? no no no "U" "" "" "" "" "" "" 0 no 0 no no
  292. _Query is NOT OPENED
  293. */ /* BROWSE br_table */
  294. &ANALYZE-RESUME
  295. &ANALYZE-SUSPEND _QUERY-BLOCK FRAME F-Main
  296. /* Query rebuild information for FRAME F-Main
  297. _Options = "NO-LOCK"
  298. _Query is NOT OPENED
  299. */ /* FRAME F-Main */
  300. &ANALYZE-RESUME
  301. /* ************************ Control Triggers ************************ */
  302. &Scoped-define BROWSE-NAME br_table
  303. &Scoped-define SELF-NAME br_table
  304. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  305. ON CTRL-END OF br_table IN FRAME F-Main
  306. DO:
  307. APPLY "END":U TO BROWSE br_table.
  308. END.
  309. /* _UIB-CODE-BLOCK-END */
  310. &ANALYZE-RESUME
  311. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  312. ON CTRL-HOME OF br_table IN FRAME F-Main
  313. DO:
  314. APPLY "HOME":U TO BROWSE br_table.
  315. END.
  316. /* _UIB-CODE-BLOCK-END */
  317. &ANALYZE-RESUME
  318. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  319. ON END OF br_table IN FRAME F-Main
  320. DO:
  321. {src/adm2/brsend.i}
  322. END.
  323. /* _UIB-CODE-BLOCK-END */
  324. &ANALYZE-RESUME
  325. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  326. ON ENTRY OF br_table IN FRAME F-Main
  327. DO:
  328. IF {&BROWSE-NAME}:FOCUSED-ROW-SELECTED = FALSE
  329. THEN {&BROWSE-NAME}:SELECT-FOCUSED-ROW() NO-ERROR.
  330. END.
  331. /* _UIB-CODE-BLOCK-END */
  332. &ANALYZE-RESUME
  333. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  334. ON HOME OF br_table IN FRAME F-Main
  335. DO:
  336. {src/adm2/brshome.i}
  337. END.
  338. /* _UIB-CODE-BLOCK-END */
  339. &ANALYZE-RESUME
  340. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  341. ON OFF-END OF br_table IN FRAME F-Main
  342. DO:
  343. {src/adm2/brsoffnd.i}
  344. END.
  345. /* _UIB-CODE-BLOCK-END */
  346. &ANALYZE-RESUME
  347. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  348. ON OFF-HOME OF br_table IN FRAME F-Main
  349. DO:
  350. {src/adm2/brsoffhm.i}
  351. END.
  352. /* _UIB-CODE-BLOCK-END */
  353. &ANALYZE-RESUME
  354. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  355. ON PAGE-DOWN OF br_table IN FRAME F-Main
  356. DO:
  357. RETURN.
  358. END.
  359. /* _UIB-CODE-BLOCK-END */
  360. &ANALYZE-RESUME
  361. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  362. ON PAGE-UP OF br_table IN FRAME F-Main
  363. DO:
  364. RETURN.
  365. END.
  366. /* _UIB-CODE-BLOCK-END */
  367. &ANALYZE-RESUME
  368. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  369. ON RETURN OF br_table IN FRAME F-Main
  370. DO:
  371. APPLY 'U2'.
  372. RETURN NO-APPLY.
  373. END.
  374. /* _UIB-CODE-BLOCK-END */
  375. &ANALYZE-RESUME
  376. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  377. ON ROW-DISPLAY OF br_table IN FRAME F-Main
  378. DO:
  379. IF rowObject.Aktiv = FALSE THEN Farbe = BGDelete.
  380. ELSE
  381. IF NOT rowObject.lFreigabe THEN Farbe = BGFreigabe.
  382. ELSE Farbe = BGNormal.
  383. rowObject.Knr :BGCOLOR IN BROWSE {&BROWSE-NAME} = Farbe.
  384. rowObject.Suchbe :BGCOLOR = Farbe.
  385. rowObject.Anzeig_Br :BGCOLOR = Farbe.
  386. rowObject.Firma1 :BGCOLOR = Farbe.
  387. rowObject.NAME :BGCOLOR = Farbe.
  388. rowObject.Strasse :BGCOLOR = Farbe.
  389. rowObject.Lkz :BGCOLOR = Farbe.
  390. rowObject.Plz :BGCOLOR = Farbe.
  391. rowObject.Ort :BGCOLOR = Farbe.
  392. END.
  393. /* _UIB-CODE-BLOCK-END */
  394. &ANALYZE-RESUME
  395. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  396. ON ROW-ENTRY OF br_table IN FRAME F-Main
  397. DO:
  398. {src/adm2/brsentry.i}
  399. END.
  400. /* _UIB-CODE-BLOCK-END */
  401. &ANALYZE-RESUME
  402. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  403. ON ROW-LEAVE OF br_table IN FRAME F-Main
  404. DO:
  405. {src/adm2/brsleave.i}
  406. END.
  407. /* _UIB-CODE-BLOCK-END */
  408. &ANALYZE-RESUME
  409. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  410. ON SCROLL-NOTIFY OF br_table IN FRAME F-Main
  411. DO:
  412. {src/adm2/brsscrol.i}
  413. END.
  414. /* _UIB-CODE-BLOCK-END */
  415. &ANALYZE-RESUME
  416. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  417. ON VALUE-CHANGED OF br_table IN FRAME F-Main
  418. DO:
  419. {src/adm2/brschnge.i}
  420. END.
  421. /* _UIB-CODE-BLOCK-END */
  422. &ANALYZE-RESUME
  423. &Scoped-define SELF-NAME X_GrosseListe
  424. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL X_GrosseListe bTableWin
  425. ON CHOOSE OF MENU-ITEM X_GrosseListe /* Grosse Excel-Liste (inkl. Debitor) */
  426. DO:
  427. RUN GROSSELISTE.
  428. APPLY 'U1'.
  429. RETURN NO-APPLY.
  430. END.
  431. /* _UIB-CODE-BLOCK-END */
  432. &ANALYZE-RESUME
  433. &UNDEFINE SELF-NAME
  434. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK bTableWin
  435. /* *************************** Main Block *************************** */
  436. Firma = DYNAMIC-FUNCTION('getMandant':U) NO-ERROR.
  437. AdFirma = DYNAMIC-FUNCTION('getAdMandant':U) NO-ERROR.
  438. &IF DEFINED(UIB_IS_RUNNING) <> 0 &THEN
  439. RUN initializeObject.
  440. &ENDIF
  441. PROCEDURE ShellExecuteA EXTERNAL "shell32.dll":
  442. DEF INPUT PARAMETER hwnd AS LONG. /* Handle to parent window */
  443. DEF INPUT PARAMETER lpOperation AS CHAR. /* Operation to perform: open, print */
  444. DEF INPUT PARAMETER lpFile AS CHAR. /* Document or executable name */
  445. DEF INPUT PARAMETER lpParameters AS CHAR. /* Command line parameters to executable in lpFile */
  446. DEF INPUT PARAMETER lpDirectory AS CHAR. /* Default directory */
  447. DEF INPUT PARAMETER nShowCmd AS LONG. /* whether shown when opened:
  448. 0 hidden, 1 normal, minimized 2, maximized 3,
  449. 0 if lpFile is a document */
  450. DEF RETURN PARAMETER hInstance AS LONG. /* Less than or equal to 32 */
  451. END PROCEDURE.
  452. /* _UIB-CODE-BLOCK-END */
  453. &ANALYZE-RESUME
  454. /* ********************** Internal Procedures *********************** */
  455. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI bTableWin _DEFAULT-DISABLE
  456. PROCEDURE disable_UI :
  457. /*------------------------------------------------------------------------------
  458. Purpose: DISABLE the User Interface
  459. Parameters: <none>
  460. Notes: Here we clean-up the user-interface by deleting
  461. dynamic widgets we have created and/or hide
  462. frames. This procedure is usually called when
  463. we are ready to "clean-up" after running.
  464. ------------------------------------------------------------------------------*/
  465. /* Hide all frames. */
  466. HIDE FRAME F-Main.
  467. IF THIS-PROCEDURE:PERSISTENT THEN DELETE PROCEDURE THIS-PROCEDURE.
  468. END PROCEDURE.
  469. /* _UIB-CODE-BLOCK-END */
  470. &ANALYZE-RESUME
  471. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enableObject bTableWin
  472. PROCEDURE enableObject :
  473. /*------------------------------------------------------------------------------
  474. Purpose: Super Override
  475. Parameters:
  476. Notes:
  477. ------------------------------------------------------------------------------*/
  478. DEF VAR hColumn AS HANDLE NO-UNDO.
  479. DEF VAR fAttrib AS CHAR NO-UNDO.
  480. DEF VAR i1 AS INT NO-UNDO.
  481. DEF VAR nColumn AS INT NO-UNDO.
  482. DEF VAR dBreite AS DEC NO-UNDO.
  483. DEF VAR cFelder AS CHAR NO-UNDO.
  484. DEF VAR Feld AS CHAR NO-UNDO.
  485. GET-KEY-VALUE SECTION 'AdressBrowser' KEY ? VALUE cFelder.
  486. IF cFelder = ? THEN cFelder = ''.
  487. DO WHILE TRUE WITH FRAME {&FRAME-NAME}:
  488. IF NUM-ENTRIES(cFelder, ';') = 0 THEN LEAVE.
  489. hColumn = {&BROWSE-NAME}:FIRST-COLUMN.
  490. i1 = 0.
  491. DO WHILE VALID-HANDLE(hColumn):
  492. i1 = i1 + 1.
  493. DO WHILE TRUE:
  494. IF LOOKUP(hColumn:NAME, cFelder, ',') = 0 THEN LEAVE.
  495. GET-KEY-VALUE SECTION 'AdressBrowser'
  496. KEY hColumn:NAME
  497. VALUE fAttrib.
  498. IF NUM-ENTRIES(fAttrib, ';') < 2 THEN LEAVE.
  499. nColumn = 0.
  500. dBreite = 0.
  501. nColumn = INTEGER(ENTRY(1,fAttrib, ';')).
  502. dBreite = DECIMAL(ENTRY(2,fAttrib, ';')).
  503. IF nColumn = ? THEN LEAVE.
  504. IF nColumn = 0 THEN LEAVE.
  505. IF dBreite = ? THEN LEAVE.
  506. IF dBreite = 0 THEN LEAVE.
  507. IF hColumn:WIDTH <> dBreite THEN hColumn:WIDTH = dBreite.
  508. IF i1 = nColumn THEN LEAVE.
  509. {&BROWSE-NAME}:MOVE-COLUMN(i1, nColumn).
  510. hColumn = {&BROWSE-NAME}:FIRST-COLUMN.
  511. i1 = 0.
  512. LEAVE.
  513. END.
  514. IF i1 > 0 THEN hColumn = hColumn:NEXT-COLUMN.
  515. END.
  516. LEAVE.
  517. END.
  518. GET-KEY-VALUE SECTION 'Grundeinstellungen'
  519. KEY 'BGGeloescht'
  520. VALUE RetValue.
  521. IF RetValue = ? THEN ASSIGN RetValue = ''.
  522. IF RetValue = '' THEN ASSIGN RetValue = '12'.
  523. BGDelete = INTEGER(RetValue).
  524. GET-KEY-VALUE SECTION 'Grundeinstellungen'
  525. KEY 'BGFreigabe'
  526. VALUE RetValue.
  527. IF RetValue = ? THEN ASSIGN RetValue = ''.
  528. IF RetValue = '' THEN ASSIGN RetValue = '14'.
  529. BGFreigabe = INTEGER(RetValue).
  530. BGNormal = 15.
  531. RUN SUPER.
  532. DEF VAR iDown AS INT NO-UNDO.
  533. DEF VAR Ja AS LOG NO-UNDO.
  534. DO WITH FRAME {&FRAME-NAME}:
  535. iDown = {&BROWSE-NAME}:DOWN / 2.
  536. Ja = {&BROWSE-NAME}:SET-REPOSITIONED-ROW(iDown, "CONDITIONAL").
  537. END.
  538. END PROCEDURE.
  539. /* _UIB-CODE-BLOCK-END */
  540. &ANALYZE-RESUME
  541. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENTRYBROWSE bTableWin
  542. PROCEDURE ENTRYBROWSE :
  543. /*------------------------------------------------------------------------------
  544. Purpose:
  545. Parameters: <none>
  546. Notes:
  547. ------------------------------------------------------------------------------*/
  548. APPLY 'ENTRY' TO {&BROWSE-NAME} IN FRAME {&FRAME-NAME}.
  549. RETURN NO-APPLY.
  550. END PROCEDURE.
  551. /* _UIB-CODE-BLOCK-END */
  552. &ANALYZE-RESUME
  553. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE GROSSELISTE bTableWin
  554. PROCEDURE GROSSELISTE :
  555. /*------------------------------------------------------------------------------
  556. Purpose:
  557. Parameters: <none>
  558. Notes:
  559. ------------------------------------------------------------------------------*/
  560. DEF VAR ii AS INT NO-UNDO.
  561. DEF VAR hBuffer AS HANDLE NO-UNDO.
  562. DEF VAR hAdresse AS HANDLE NO-UNDO.
  563. DEF VAR hDebst AS HANDLE NO-UNDO.
  564. DEF VAR hFeld AS HANDLE NO-UNDO.
  565. DEF VAR cFeld AS CHAR NO-UNDO.
  566. DEF VAR cLabel AS CHAR NO-UNDO.
  567. DEF VAR cDateiname AS CHAR NO-UNDO.
  568. DEF VAR iRet AS INT NO-UNDO.
  569. EMPTY TEMP-TABLE tExcelListe.
  570. CREATE tExcelListe.
  571. cDateiName = SESSION:TEMP-DIRECTORY + 'AdressListe.csv'.
  572. OUTPUT TO VALUE(cDateiName) NO-MAP NO-CONVERT.
  573. hBuffer = TEMP-TABLE tExcelListe:DEFAULT-BUFFER-HANDLE.
  574. hAdresse = BUFFER Adresse:HANDLE.
  575. hDebst = BUFFER Debst :HANDLE.
  576. DO ii = 1 TO hAdresse:NUM-FIELDS:
  577. hFeld = hAdresse:BUFFER-FIELD(ii).
  578. cFeld = hFeld:NAME.
  579. cLabel = hFeld:LABEL.
  580. IF cLabel = '' OR
  581. cLabel = ? THEN cLabel = cFeld.
  582. hFeld = hBuffer:BUFFER-FIELD(cFeld) NO-ERROR.
  583. IF NOT VALID-HANDLE(hFeld) THEN NEXT.
  584. hFeld:LABEL = cLabel.
  585. END.
  586. DO ii = 1 TO hDebst:NUM-FIELDS:
  587. hFeld = hDebst:BUFFER-FIELD(ii).
  588. cFeld = hFeld:NAME.
  589. cLabel = hFeld:LABEL.
  590. IF cLabel = '' OR
  591. cLabel = ? THEN cLabel = cFeld.
  592. hFeld = hBuffer:BUFFER-FIELD(cFeld) NO-ERROR.
  593. IF NOT VALID-HANDLE(hFeld) THEN NEXT.
  594. hFeld:LABEL = cLabel.
  595. END.
  596. DO ii = 1 TO hBuffer:NUM-FIELDS:
  597. IF ii > 1 THEN PUT CONTROL ';'.
  598. PUT CONTROL hBuffer:BUFFER-FIELD(ii):LABEL.
  599. END.
  600. PUT CHR(10).
  601. FOR EACH Adresse NO-LOCK
  602. WHERE Adresse.Firma = AdFirma
  603. AND Adresse.Aktiv = TRUE:
  604. FIND FIRST Debst NO-LOCK
  605. WHERE Debst.Firma = Firma
  606. AND Debst.Knr = Adresse.Knr
  607. AND Debst.Aktiv = TRUE NO-ERROR.
  608. FIND FIRST tExcelListe.
  609. BUFFER-COPY Adresse TO tExcelListe.
  610. IF AVAILABLE Debst THEN BUFFER-COPY Debst TO tExcelListe.
  611. EXPORT DELIMITER ';' tExcelListe.
  612. END.
  613. OUTPUT CLOSE.
  614. RUN ShellExecuteA ( INPUT 0,
  615. INPUT 'open',
  616. INPUT 'Excel.exe',
  617. INPUT cDateiName,
  618. INPUT '',
  619. INPUT 1,
  620. OUTPUT iRet ).
  621. END PROCEDURE.
  622. /* _UIB-CODE-BLOCK-END */
  623. &ANALYZE-RESUME
  624. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE hideObject bTableWin
  625. PROCEDURE hideObject :
  626. /*------------------------------------------------------------------------------
  627. Purpose: Super Override
  628. Parameters:
  629. Notes:
  630. ------------------------------------------------------------------------------*/
  631. DEF VAR hColumn AS HANDLE NO-UNDO.
  632. DEF VAR fAttrib AS CHAR NO-UNDO.
  633. DEF VAR i1 AS INT NO-UNDO.
  634. DO WITH FRAME {&FRAME-NAME}:
  635. hColumn = {&BROWSE-NAME}:FIRST-COLUMN.
  636. i1 = 0.
  637. DO WHILE VALID-HANDLE(hColumn):
  638. i1 = i1 + 1.
  639. fAttrib = STRING(i1) + ';'
  640. + STRING(hColumn:WIDTH).
  641. PUT-KEY-VALUE SECTION 'AdressBrowser'
  642. KEY hColumn:NAME
  643. VALUE fAttrib.
  644. hColumn = hColumn:NEXT-COLUMN.
  645. END.
  646. END.
  647. /* Code placed here will execute PRIOR to standard behavior. */
  648. RUN SUPER.
  649. /* Code placed here will execute AFTER standard behavior. */
  650. END PROCEDURE.
  651. /* _UIB-CODE-BLOCK-END */
  652. &ANALYZE-RESUME
  653. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE initializeObject bTableWin
  654. PROCEDURE initializeObject :
  655. /*------------------------------------------------------------------------------
  656. Purpose: Super Override
  657. Parameters:
  658. Notes:
  659. ------------------------------------------------------------------------------*/
  660. /*
  661. das Feld Tel-1 an zweiter Stelle zufügen
  662. DEF VAR i1 AS INT NO-UNDO.
  663. DEF VAR hBrowse AS HANDLE NO-UNDO.
  664. DEF VAR hSource AS HANDLE NO-UNDO.
  665. DEF VAR hQuery AS HANDLE NO-UNDO.
  666. DEF VAR hDataBuffer AS HANDLE NO-UNDO.
  667. DEF VAR hField AS HANDLE NO-UNDO.
  668. DEF VAR cFields AS CHAR NO-UNDO.
  669. DO WITH FRAME {&FRAME-NAME}:
  670. hBrowse = {&BROWSE-NAME}:HANDLE.
  671. hSource = DYNAMIC-FUNCTION('getDataSource':U).
  672. hQuery = DYNAMIC-FUNCTION('getDataHandle':U IN hSource ).
  673. hBrowse:QUERY = hQuery NO-ERROR.
  674. ERROR-STATUS:ERROR = NO.
  675. hDataBuffer = hQuery:GET-BUFFER-HANDLE(1).
  676. cFields = DYNAMIC-FUNCTION('getDataColumns':U IN hSource ).
  677. i1 = LOOKUP('Tel-1', cFields, ',').
  678. hField = hDataBuffer:BUFFER-FIELD(ENTRY(i1, cFields)) NO-ERROR.
  679. hBrowse:ADD-LIKE-COLUMN(hField, 2).
  680. END.
  681. */
  682. /* Code placed here will execute PRIOR to standard behavior. */
  683. RUN SUPER.
  684. END PROCEDURE.
  685. /* _UIB-CODE-BLOCK-END */
  686. &ANALYZE-RESUME