w-kubes.w 34 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961
  1. &ANALYZE-SUSPEND _VERSION-NUMBER AB_v10r12 GUI ADM2
  2. &ANALYZE-RESUME
  3. &Scoped-define WINDOW-NAME wKundenbesuch
  4. {adecomm/appserv.i}
  5. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS wKundenbesuch
  6. /*------------------------------------------------------------------------
  7. File:
  8. Description: from cntnrwin.w - ADM SmartWindow Template
  9. Input Parameters:
  10. <none>
  11. Output Parameters:
  12. <none>
  13. History: New V9 Version - January 15, 1998
  14. ------------------------------------------------------------------------*/
  15. /* This .W file was created with the Progress AB. */
  16. /*----------------------------------------------------------------------*/
  17. /* Create an unnamed pool to store all the widgets created
  18. by this procedure. This is a good default which assures
  19. that this procedure's triggers and internal procedures
  20. will execute in this procedure's storage, and that proper
  21. cleanup will occur on deletion of the procedure. */
  22. CREATE WIDGET-POOL.
  23. /* *************************** Definitions ************************** */
  24. /* Parameters Definitions --- */
  25. /* Local Variable Definitions --- */
  26. DEF VAR cUser AS CHAR NO-UNDO.
  27. DEF VAR iVertr AS INT NO-UNDO.
  28. { incl/windefinition.i }
  29. {src/adm2/widgetprto.i}
  30. /* _UIB-CODE-BLOCK-END */
  31. &ANALYZE-RESUME
  32. &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
  33. /* ******************** Preprocessor Definitions ******************** */
  34. &Scoped-define PROCEDURE-TYPE SmartWindow
  35. &Scoped-define DB-AWARE no
  36. &Scoped-define ADM-CONTAINER WINDOW
  37. &Scoped-define ADM-SUPPORTED-LINKS Data-Target,Data-Source,Page-Target,Update-Source,Update-Target,Filter-target,Filter-Source
  38. /* Name of designated FRAME-NAME and/or first browse and/or first query */
  39. &Scoped-define FRAME-NAME fMain
  40. /* Standard List Definitions */
  41. &Scoped-Define ENABLED-OBJECTS Btn_Suchen CB_Suchvertreter
  42. &Scoped-Define DISPLAYED-OBJECTS CB_Suchvertreter
  43. /* Custom List Definitions */
  44. /* List-1,List-2,List-3,List-4,List-5,List-6 */
  45. /* _UIB-PREPROCESSOR-BLOCK-END */
  46. &ANALYZE-RESUME
  47. /* ************************ Function Prototypes ********************** */
  48. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION-FORWARD getProgname wKundenbesuch
  49. FUNCTION getProgname RETURNS CHARACTER
  50. ( /* parameter-definitions */ ) FORWARD.
  51. /* _UIB-CODE-BLOCK-END */
  52. &ANALYZE-RESUME
  53. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION-FORWARD getSuchVertreter wKundenbesuch
  54. FUNCTION getSuchVertreter RETURNS INT64
  55. ( /* parameter-definitions */ ) FORWARD.
  56. /* _UIB-CODE-BLOCK-END */
  57. &ANALYZE-RESUME
  58. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION-FORWARD setTableIOLink wKundenbesuch
  59. FUNCTION setTableIOLink RETURNS LOGICAL
  60. ( ipViewer AS CHAR ) FORWARD.
  61. /* _UIB-CODE-BLOCK-END */
  62. &ANALYZE-RESUME
  63. /* *********************** Control Definitions ********************** */
  64. /* Define the widget handle for the window */
  65. DEFINE VAR wKundenbesuch AS WIDGET-HANDLE NO-UNDO.
  66. /* Definitions of handles for SmartObjects */
  67. DEFINE VARIABLE h_b-kubes AS HANDLE NO-UNDO.
  68. DEFINE VARIABLE h_b-kubesspe AS HANDLE NO-UNDO.
  69. DEFINE VARIABLE h_d-kubes AS HANDLE NO-UNDO.
  70. DEFINE VARIABLE h_d-kubesspe AS HANDLE NO-UNDO.
  71. DEFINE VARIABLE h_d-kubessta AS HANDLE NO-UNDO.
  72. DEFINE VARIABLE h_dyntoolbar AS HANDLE NO-UNDO.
  73. DEFINE VARIABLE h_folder AS HANDLE NO-UNDO.
  74. DEFINE VARIABLE h_v-kubes AS HANDLE NO-UNDO.
  75. DEFINE VARIABLE h_v-kubesspe AS HANDLE NO-UNDO.
  76. DEFINE VARIABLE h_v-kubessta AS HANDLE NO-UNDO.
  77. /* Definitions of the field level widgets */
  78. DEFINE BUTTON Btn_Suchen
  79. IMAGE-UP FILE "grafik/select.bmp":U
  80. IMAGE-DOWN FILE "grafik/select.bmp":U
  81. LABEL "Suchen"
  82. SIZE 4 BY .95.
  83. DEFINE VARIABLE CB_Suchvertreter AS CHARACTER FORMAT "X(256)":U
  84. LABEL "Vertreter für suchen"
  85. VIEW-AS COMBO-BOX INNER-LINES 5
  86. LIST-ITEM-PAIRS "Item 1","Item 1"
  87. DROP-DOWN-LIST
  88. SIZE 41.2 BY 1
  89. BGCOLOR 15 NO-UNDO.
  90. /* ************************ Frame Definitions *********************** */
  91. DEFINE FRAME fMain
  92. Btn_Suchen AT ROW 1.19 COL 69.4 WIDGET-ID 2
  93. CB_Suchvertreter AT ROW 1.19 COL 108 COLON-ALIGNED WIDGET-ID 4
  94. WITH 1 DOWN NO-BOX KEEP-TAB-ORDER OVERLAY
  95. SIDE-LABELS NO-UNDERLINE THREE-D
  96. AT COL 1 ROW 1
  97. SIZE 152.2 BY 26.38 WIDGET-ID 100.
  98. /* *********************** Procedure Settings ************************ */
  99. &ANALYZE-SUSPEND _PROCEDURE-SETTINGS
  100. /* Settings for THIS-PROCEDURE
  101. Type: SmartWindow
  102. Allow: Basic,Browse,DB-Fields,Query,Smart,Window
  103. Container Links: Data-Target,Data-Source,Page-Target,Update-Source,Update-Target,Filter-target,Filter-Source
  104. Design Page: 1
  105. Other Settings: COMPILE APPSERVER
  106. */
  107. &ANALYZE-RESUME _END-PROCEDURE-SETTINGS
  108. /* ************************* Create Window ************************** */
  109. &ANALYZE-SUSPEND _CREATE-WINDOW
  110. IF SESSION:DISPLAY-TYPE = "GUI":U THEN
  111. CREATE WINDOW wKundenbesuch ASSIGN
  112. HIDDEN = YES
  113. TITLE = "Kundenbesuche/Aussendienst"
  114. HEIGHT = 26.38
  115. WIDTH = 152.2
  116. MAX-HEIGHT = 54.19
  117. MAX-WIDTH = 384
  118. VIRTUAL-HEIGHT = 54.19
  119. VIRTUAL-WIDTH = 384
  120. RESIZE = NO
  121. SCROLL-BARS = NO
  122. STATUS-AREA = NO
  123. BGCOLOR = ?
  124. FGCOLOR = ?
  125. THREE-D = YES
  126. MESSAGE-AREA = NO
  127. SENSITIVE = YES.
  128. ELSE {&WINDOW-NAME} = CURRENT-WINDOW.
  129. &IF '{&WINDOW-SYSTEM}' NE 'TTY' &THEN
  130. IF NOT wKundenbesuch:LOAD-ICON("grafik/appl.ico":U) THEN
  131. MESSAGE "Unable to load icon: grafik/appl.ico"
  132. VIEW-AS ALERT-BOX WARNING BUTTONS OK.
  133. &ENDIF
  134. /* END WINDOW DEFINITION */
  135. &ANALYZE-RESUME
  136. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB wKundenbesuch
  137. /* ************************* Included-Libraries *********************** */
  138. {src/adm2/containr.i}
  139. /* _UIB-CODE-BLOCK-END */
  140. &ANALYZE-RESUME
  141. /* *********** Runtime Attributes and AppBuilder Settings *********** */
  142. &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES
  143. /* SETTINGS FOR WINDOW wKundenbesuch
  144. VISIBLE,,RUN-PERSISTENT */
  145. /* SETTINGS FOR FRAME fMain
  146. FRAME-NAME */
  147. ASSIGN
  148. Btn_Suchen:AUTO-RESIZE IN FRAME fMain = TRUE.
  149. IF SESSION:DISPLAY-TYPE = "GUI":U AND VALID-HANDLE(wKundenbesuch)
  150. THEN wKundenbesuch:HIDDEN = YES.
  151. /* _RUN-TIME-ATTRIBUTES-END */
  152. &ANALYZE-RESUME
  153. /* ************************ Control Triggers ************************ */
  154. &Scoped-define SELF-NAME wKundenbesuch
  155. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL wKundenbesuch wKundenbesuch
  156. ON END-ERROR OF wKundenbesuch /* Kundenbesuche/Aussendienst */
  157. OR ENDKEY OF {&WINDOW-NAME} ANYWHERE
  158. DO:
  159. /* This case occurs when the user presses the "Esc" key.
  160. In a persistently run window, just ignore this. If we did not, the
  161. application would exit. */
  162. IF THIS-PROCEDURE:PERSISTENT THEN RETURN NO-APPLY.
  163. /* ****************************** */
  164. RUN ENDE.
  165. RETURN NO-APPLY.
  166. /* ****************************** */
  167. END.
  168. /* _UIB-CODE-BLOCK-END */
  169. &ANALYZE-RESUME
  170. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL wKundenbesuch wKundenbesuch
  171. ON WINDOW-CLOSE OF wKundenbesuch /* Kundenbesuche/Aussendienst */
  172. DO:
  173. /* This ADM code must be left here in order for the SmartWindow
  174. and its descendents to terminate properly on exit. */
  175. RUN ENDE.
  176. RETURN NO-APPLY.
  177. END.
  178. /* _UIB-CODE-BLOCK-END */
  179. &ANALYZE-RESUME
  180. &Scoped-define SELF-NAME Btn_Suchen
  181. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_Suchen wKundenbesuch
  182. ON CHOOSE OF Btn_Suchen IN FRAME fMain /* Suchen */
  183. DO:
  184. RUN FINDEN NO-ERROR.
  185. RETURN NO-APPLY.
  186. END.
  187. /* _UIB-CODE-BLOCK-END */
  188. &ANALYZE-RESUME
  189. &Scoped-define SELF-NAME CB_Suchvertreter
  190. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_Suchvertreter wKundenbesuch
  191. ON VALUE-CHANGED OF CB_Suchvertreter IN FRAME fMain /* Vertreter für suchen */
  192. DO:
  193. DEF VAR ii AS INT NO-UNDO.
  194. iVertr = INTEGER(CB_Suchvertreter:SCREEN-VALUE) NO-ERROR.
  195. DO ii = 1 TO 10:
  196. PUT-KEY-VALUE SECTION cUser
  197. KEY 'Vertreter'
  198. VALUE STRING(iVertr,'999999') NO-ERROR.
  199. IF NOT ERROR-STATUS:ERROR THEN LEAVE.
  200. END.
  201. PUBLISH 'VERTRETERWECHSEL' ( INPUT iVertr ).
  202. APPLY 'U1'.
  203. RETURN NO-APPLY.
  204. END.
  205. /* _UIB-CODE-BLOCK-END */
  206. &ANALYZE-RESUME
  207. &UNDEFINE SELF-NAME
  208. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK wKundenbesuch
  209. /* *************************** Main Block *************************** */
  210. { incl/winmainblock.i }
  211. cUser = DYNAMIC-FUNCTION('getDBUser':U) NO-ERROR.
  212. MaxSeite = 2.
  213. {src/adm2/windowmn.i}
  214. ON 'ALT-F':U, 'CTRL-F':U OF {&WINDOW-NAME} ANYWHERE
  215. DO:
  216. RUN FINDEN NO-ERROR.
  217. RETURN NO-APPLY.
  218. END.
  219. ON 'CTRL-N':U OF {&WINDOW-NAME} ANYWHERE
  220. DO:
  221. RUN FINDEN_NUMMER NO-ERROR.
  222. RETURN NO-APPLY.
  223. END.
  224. ON 'END-ERROR':U OF {&WINDOW-NAME} ANYWHERE
  225. DO:
  226. DEF VAR sHandle AS CHAR NO-UNDO.
  227. DEF VAR hTableIO AS HANDLE NO-UNDO.
  228. DEF VAR cViewer AS CHAR NO-UNDO.
  229. sHandle = DYNAMIC-FUNCTION('getTableioTarget':U IN hAktionen ) NO-ERROR.
  230. hTableIO = WIDGET-HANDLE(ENTRY(01, sHandle)) NO-ERROR.
  231. cViewer = hTableIO:FILE-NAME NO-ERROR.
  232. FMutFlag = DYNAMIC-FUNCTION('GETMUTFLAG':U, INPUT Progname) NO-ERROR.
  233. IF FMutFlag = TRUE THEN
  234. DO:
  235. RUN TOOLBAR ( INPUT 'CANCEL':U ).
  236. RETURN NO-APPLY.
  237. END.
  238. IF cViewer = 'v-kubessta.w' THEN
  239. DO:
  240. DYNAMIC-FUNCTION('setTableIOLink':U, 'v-kubes.w') NO-ERROR.
  241. RUN ENTRY_CURSOR.
  242. RETURN NO-APPLY.
  243. END.
  244. RUN ENDE.
  245. RETURN NO-APPLY.
  246. END.
  247. /* _UIB-CODE-BLOCK-END */
  248. &ANALYZE-RESUME
  249. /* ********************** Internal Procedures *********************** */
  250. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE adm-create-objects wKundenbesuch _ADM-CREATE-OBJECTS
  251. PROCEDURE adm-create-objects :
  252. /*------------------------------------------------------------------------------
  253. Purpose: Create handles for all SmartObjects used in this procedure.
  254. After SmartObjects are initialized, then SmartLinks are added.
  255. Parameters: <none>
  256. ------------------------------------------------------------------------------*/
  257. DEFINE VARIABLE currentPage AS INTEGER NO-UNDO.
  258. ASSIGN currentPage = getCurrentPage().
  259. CASE currentPage:
  260. WHEN 0 THEN DO:
  261. RUN constructObject (
  262. INPUT 'd-kubes.wDB-AWARE':U ,
  263. INPUT FRAME fMain:HANDLE ,
  264. INPUT 'AppServiceASInfoASUsePrompt?CacheDuration0CheckCurrentChangedyesDestroyStatelessyesDisconnectAppServernoServerOperatingModeNONEShareDatanoUpdateFromSourcenoForeignFieldsObjectNamed-kubesOpenOnInitnoPromptColumns(NONE)PromptOnDeletenoRowsToBatch200RebuildOnReposyesToggleDataTargetsyes':U ,
  265. OUTPUT h_d-kubes ).
  266. RUN repositionObject IN h_d-kubes ( 5.00 , 20.00 ) NO-ERROR.
  267. /* Size in AB: ( 3.00 , 20.00 ) */
  268. RUN constructObject (
  269. INPUT 'd-kubessta.wDB-AWARE':U ,
  270. INPUT FRAME fMain:HANDLE ,
  271. INPUT 'AppServiceASInfoASUsePrompt?CacheDuration0CheckCurrentChangedyesDestroyStatelessyesDisconnectAppServernoServerOperatingModeNONEShareDatanoUpdateFromSourcenoForeignFieldsKuBesSta.Firma,Firma,KuBesSta.Knr,KnrObjectNamed-kubesstaOpenOnInityesPromptColumns(NONE)PromptOnDeleteyesRowsToBatch200RebuildOnReposnoToggleDataTargetsyes':U ,
  272. OUTPUT h_d-kubessta ).
  273. RUN repositionObject IN h_d-kubessta ( 5.00 , 50.00 ) NO-ERROR.
  274. /* Size in AB: ( 3.00 , 20.00 ) */
  275. RUN constructObject (
  276. INPUT 'd-kubesspe.wDB-AWARE':U ,
  277. INPUT FRAME fMain:HANDLE ,
  278. INPUT 'AppServiceASInfoASUsePrompt?CacheDuration0CheckCurrentChangedyesDestroyStatelessyesDisconnectAppServernoServerOperatingModeNONEShareDatanoUpdateFromSourcenoForeignFieldsKuBesSpe.Firma,Firma,KuBesSpe.Knr,Knr,KuBesSpe.Datum_1,Datum_1,KuBesSpe.Ind,IndObjectNamed-kubesspeOpenOnInityesPromptColumns(NONE)PromptOnDeleteyesRowsToBatch200RebuildOnReposnoToggleDataTargetsyes':U ,
  279. OUTPUT h_d-kubesspe ).
  280. RUN repositionObject IN h_d-kubesspe ( 8.62 , 20.20 ) NO-ERROR.
  281. /* Size in AB: ( 4.10 , 20.80 ) */
  282. RUN constructObject (
  283. INPUT 'adm2/dyntoolbar.w':U ,
  284. INPUT FRAME fMain:HANDLE ,
  285. INPUT 'EdgePixels2DeactivateTargetOnHideyesDisabledActionsFlatButtonsyesMenunoShowBorderyesToolbaryesActionGroupsTableio,NavigationTableIOTypeUpdateSupportedLinksNavigation-source,Tableio-sourceToolbarBandsToolbarAutoSizenoToolbarDrawDirectionHorizontalLogicalObjectNameDisabledActionsHiddenActionsResetHiddenToolbarBandsHiddenMenuBandsMenuMergeOrder0RemoveMenuOnHidenoCreateSubMenuOnConflictyesNavigationTargetNameHideOnInitnoDisableOnInitnoObjectLayout':U ,
  286. OUTPUT h_dyntoolbar ).
  287. RUN repositionObject IN h_dyntoolbar ( 1.00 , 1.00 ) NO-ERROR.
  288. RUN resizeObject IN h_dyntoolbar ( 1.24 , 67.20 ) NO-ERROR.
  289. RUN constructObject (
  290. INPUT 'adm2/folder.w':U ,
  291. INPUT FRAME fMain:HANDLE ,
  292. INPUT 'FolderLabels':U + 'Kundenbesuche (1)|Spesen (2)' + 'FolderTabWidth0FolderFont-1HideOnInitnoDisableOnInitnoObjectLayout':U ,
  293. OUTPUT h_folder ).
  294. RUN repositionObject IN h_folder ( 2.38 , 1.00 ) NO-ERROR.
  295. RUN resizeObject IN h_folder ( 25.00 , 152.00 ) NO-ERROR.
  296. /* Links to SmartDataObject h_d-kubes. */
  297. RUN addLink ( h_dyntoolbar , 'Navigation':U , h_d-kubes ).
  298. /* Links to SmartDataObject h_d-kubessta. */
  299. RUN addLink ( h_d-kubes , 'Data':U , h_d-kubessta ).
  300. /* Links to SmartDataObject h_d-kubesspe. */
  301. RUN addLink ( h_d-kubes , 'Data':U , h_d-kubesspe ).
  302. /* Links to SmartFolder h_folder. */
  303. RUN addLink ( h_folder , 'Page':U , THIS-PROCEDURE ).
  304. /* Adjust the tab order of the smart objects. */
  305. RUN adjustTabOrder ( h_dyntoolbar ,
  306. Btn_Suchen:HANDLE IN FRAME fMain , 'BEFORE':U ).
  307. RUN adjustTabOrder ( h_folder ,
  308. CB_Suchvertreter:HANDLE IN FRAME fMain , 'AFTER':U ).
  309. END. /* Page 0 */
  310. WHEN 1 THEN DO:
  311. RUN constructObject (
  312. INPUT 'b-kubes.w':U ,
  313. INPUT FRAME fMain:HANDLE ,
  314. INPUT 'ScrollRemotenoNumDown0CalcWidthnoMaxWidth80FetchOnReposToEndyesUseSortIndicatoryesSearchFieldDataSourceNames?UpdateTargetNames?LogicalObjectNameHideOnInitnoDisableOnInitnoObjectLayout':U ,
  315. OUTPUT h_b-kubes ).
  316. RUN repositionObject IN h_b-kubes ( 3.86 , 1.00 ) NO-ERROR.
  317. RUN resizeObject IN h_b-kubes ( 7.38 , 151.00 ) NO-ERROR.
  318. RUN constructObject (
  319. INPUT 'v-kubessta.w':U ,
  320. INPUT FRAME fMain:HANDLE ,
  321. INPUT 'EnabledObjFldsToDisable?ModifyFields(All)DataSourceNamesUpdateTargetNamesLogicalObjectNameLogicalObjectNamePhysicalObjectNameDynamicObjectnoRunAttributeHideOnInitnoDisableOnInitnoObjectLayout':U ,
  322. OUTPUT h_v-kubessta ).
  323. RUN repositionObject IN h_v-kubessta ( 17.95 , 1.00 ) NO-ERROR.
  324. /* Size in AB: ( 9.19 , 151.00 ) */
  325. RUN constructObject (
  326. INPUT 'v-kubes.w':U ,
  327. INPUT FRAME fMain:HANDLE ,
  328. INPUT 'EnabledObjFldsToDisable(None)ModifyFields(All)DataSourceNamesUpdateTargetNamesLogicalObjectNamev-kubesLogicalObjectNamev-kubesPhysicalObjectNameDynamicObjectnoRunAttributeHideOnInitnoDisableOnInitnoObjectLayout':U ,
  329. OUTPUT h_v-kubes ).
  330. RUN repositionObject IN h_v-kubes ( 11.38 , 1.00 ) NO-ERROR.
  331. /* Size in AB: ( 6.43 , 151.00 ) */
  332. /* Links to SmartDataBrowser h_b-kubes. */
  333. RUN addLink ( h_d-kubes , 'Data':U , h_b-kubes ).
  334. /* Links to SmartDataViewer h_v-kubessta. */
  335. RUN addLink ( h_d-kubessta , 'Data':U , h_v-kubessta ).
  336. RUN addLink ( h_v-kubessta , 'Update':U , h_d-kubessta ).
  337. /* Links to SmartDataViewer h_v-kubes. */
  338. RUN addLink ( h_d-kubes , 'Data':U , h_v-kubes ).
  339. RUN addLink ( h_v-kubes , 'Update':U , h_d-kubes ).
  340. /* Adjust the tab order of the smart objects. */
  341. RUN adjustTabOrder ( h_b-kubes ,
  342. h_folder , 'AFTER':U ).
  343. RUN adjustTabOrder ( h_v-kubes ,
  344. h_d-kubesspe , 'AFTER':U ).
  345. RUN adjustTabOrder ( h_v-kubessta ,
  346. h_v-kubes , 'AFTER':U ).
  347. END. /* Page 1 */
  348. WHEN 2 THEN DO:
  349. RUN constructObject (
  350. INPUT 'b-kubesspe.w':U ,
  351. INPUT FRAME fMain:HANDLE ,
  352. INPUT 'ScrollRemotenoNumDown0CalcWidthnoMaxWidth80FetchOnReposToEndyesUseSortIndicatoryesSearchFieldDataSourceNames?UpdateTargetNames?LogicalObjectNameHideOnInitnoDisableOnInitnoObjectLayout':U ,
  353. OUTPUT h_b-kubesspe ).
  354. RUN repositionObject IN h_b-kubesspe ( 4.00 , 2.00 ) NO-ERROR.
  355. RUN resizeObject IN h_b-kubesspe ( 7.38 , 103.00 ) NO-ERROR.
  356. RUN constructObject (
  357. INPUT 'v-kubesspe.w':U ,
  358. INPUT FRAME fMain:HANDLE ,
  359. INPUT 'EnabledObjFldsToDisable?ModifyFields(All)DataSourceNamesUpdateTargetNamesLogicalObjectNameLogicalObjectNamePhysicalObjectNameDynamicObjectnoRunAttributeHideOnInitnoDisableOnInitnoObjectLayout':U ,
  360. OUTPUT h_v-kubesspe ).
  361. RUN repositionObject IN h_v-kubesspe ( 12.00 , 2.00 ) NO-ERROR.
  362. /* Size in AB: ( 10.71 , 103.00 ) */
  363. /* Links to SmartDataBrowser h_b-kubesspe. */
  364. RUN addLink ( h_d-kubesspe , 'Data':U , h_b-kubesspe ).
  365. /* Links to SmartDataViewer h_v-kubesspe. */
  366. RUN addLink ( h_d-kubesspe , 'Data':U , h_v-kubesspe ).
  367. RUN addLink ( h_v-kubesspe , 'Update':U , h_d-kubesspe ).
  368. /* Adjust the tab order of the smart objects. */
  369. RUN adjustTabOrder ( h_b-kubesspe ,
  370. h_folder , 'AFTER':U ).
  371. RUN adjustTabOrder ( h_v-kubesspe ,
  372. h_d-kubesspe , 'AFTER':U ).
  373. END. /* Page 2 */
  374. END CASE.
  375. END PROCEDURE.
  376. /* _UIB-CODE-BLOCK-END */
  377. &ANALYZE-RESUME
  378. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE changePage wKundenbesuch
  379. PROCEDURE changePage :
  380. /*------------------------------------------------------------------------------
  381. Purpose: Super Override
  382. Parameters:
  383. Notes:
  384. ------------------------------------------------------------------------------*/
  385. RUN SUPER.
  386. AktSeite = DYNAMIC-FUNCTION('getCurrentPage':U) NO-ERROR.
  387. CASE AktSeite:
  388. WHEN 1 THEN
  389. DO:
  390. RUN addLink ( hAktionen , 'TableIO':U , h_v-kubes ).
  391. /* RUN addLink ( hAktionen , 'Navigation':U , h_d-auftr ). */
  392. /* RUN setButtons IN hAktionen ( 'initial-TableIo' ) NO-ERROR. */
  393. END.
  394. WHEN 2 THEN
  395. DO:
  396. RUN addLink ( hAktionen , 'TableIO':U , h_v-kubesspe ).
  397. END.
  398. END CASE.
  399. RUN ENTRY_CURSOR.
  400. END PROCEDURE.
  401. /* _UIB-CODE-BLOCK-END */
  402. &ANALYZE-RESUME
  403. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI wKundenbesuch _DEFAULT-DISABLE
  404. PROCEDURE disable_UI :
  405. /*------------------------------------------------------------------------------
  406. Purpose: DISABLE the User Interface
  407. Parameters: <none>
  408. Notes: Here we clean-up the user-interface by deleting
  409. dynamic widgets we have created and/or hide
  410. frames. This procedure is usually called when
  411. we are ready to "clean-up" after running.
  412. ------------------------------------------------------------------------------*/
  413. /* Delete the WINDOW we created */
  414. IF SESSION:DISPLAY-TYPE = "GUI":U AND VALID-HANDLE(wKundenbesuch)
  415. THEN DELETE WIDGET wKundenbesuch.
  416. IF THIS-PROCEDURE:PERSISTENT THEN DELETE PROCEDURE THIS-PROCEDURE.
  417. END PROCEDURE.
  418. /* _UIB-CODE-BLOCK-END */
  419. &ANALYZE-RESUME
  420. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enableObject wKundenbesuch
  421. PROCEDURE enableObject :
  422. /*------------------------------------------------------------------------------
  423. Purpose: Super Override
  424. Parameters:
  425. Notes:
  426. ------------------------------------------------------------------------------*/
  427. cInstallation = DYNAMIC-FUNCTION ('getInstallation':U) NO-ERROR.
  428. cBenutzer = DYNAMIC-FUNCTION ('getBenutzer':U) NO-ERROR.
  429. { incl/winenableobject.i }
  430. RUN SUPER.
  431. END PROCEDURE.
  432. /* _UIB-CODE-BLOCK-END */
  433. &ANALYZE-RESUME
  434. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enable_UI wKundenbesuch _DEFAULT-ENABLE
  435. PROCEDURE enable_UI :
  436. /*------------------------------------------------------------------------------
  437. Purpose: ENABLE the User Interface
  438. Parameters: <none>
  439. Notes: Here we display/view/enable the widgets in the
  440. user-interface. In addition, OPEN all queries
  441. associated with each FRAME and BROWSE.
  442. These statements here are based on the "Other
  443. Settings" section of the widget Property Sheets.
  444. ------------------------------------------------------------------------------*/
  445. DISPLAY CB_Suchvertreter
  446. WITH FRAME fMain IN WINDOW wKundenbesuch.
  447. ENABLE Btn_Suchen CB_Suchvertreter
  448. WITH FRAME fMain IN WINDOW wKundenbesuch.
  449. {&OPEN-BROWSERS-IN-QUERY-fMain}
  450. VIEW wKundenbesuch.
  451. END PROCEDURE.
  452. /* _UIB-CODE-BLOCK-END */
  453. &ANALYZE-RESUME
  454. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENDE wKundenbesuch
  455. PROCEDURE ENDE :
  456. /*------------------------------------------------------------------------------
  457. Purpose:
  458. Parameters: <none>
  459. Notes:
  460. ------------------------------------------------------------------------------*/
  461. { incl/winende.i }
  462. END PROCEDURE.
  463. /* _UIB-CODE-BLOCK-END */
  464. &ANALYZE-RESUME
  465. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENTRY_CURSOR wKundenbesuch
  466. PROCEDURE ENTRY_CURSOR :
  467. /*------------------------------------------------------------------------------
  468. Purpose:
  469. Parameters: <none>
  470. Notes:
  471. ------------------------------------------------------------------------------*/
  472. DEF VAR sHandle AS CHAR NO-UNDO.
  473. DEF VAR hTableIO AS HANDLE NO-UNDO.
  474. DEF VAR cViewer AS CHAR NO-UNDO.
  475. sHandle = DYNAMIC-FUNCTION('getTableioTarget':U IN hAktionen ) NO-ERROR.
  476. hTableIO = WIDGET-HANDLE(ENTRY(01, sHandle)) NO-ERROR.
  477. cViewer = hTableIO:FILE-NAME NO-ERROR.
  478. AktSeite = DYNAMIC-FUNCTION('getCurrentPage':U) NO-ERROR.
  479. FMutFlag = DYNAMIC-FUNCTION('getMutflag':U, INPUT Progname) NO-ERROR.
  480. CASE AktSeite:
  481. WHEN 1 THEN
  482. DO:
  483. CASE cViewer:
  484. WHEN 'v-kubes.w' THEN
  485. DO:
  486. IF FMutFlag THEN RUN applyEntry IN h_v-kubes ( INPUT ? ).
  487. ELSE RUN applyEntry IN h_b-kubes ( INPUT ? ).
  488. END.
  489. WHEN 'v-kubessta.w' THEN
  490. DO:
  491. RUN applyEntry IN h_v-kubessta ( INPUT ? ).
  492. END.
  493. END CASE.
  494. END.
  495. WHEN 2 THEN
  496. DO:
  497. IF FMutFlag THEN RUN applyEntry IN h_v-kubesspe ( INPUT ? ).
  498. ELSE RUN applyEntry IN h_b-kubesspe ( INPUT ? ).
  499. END.
  500. END CASE.
  501. RETURN NO-APPLY.
  502. END PROCEDURE.
  503. /* _UIB-CODE-BLOCK-END */
  504. &ANALYZE-RESUME
  505. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE exitObject wKundenbesuch
  506. PROCEDURE exitObject :
  507. /*------------------------------------------------------------------------------
  508. Purpose: Window-specific override of this procedure which destroys
  509. its contents and itself.
  510. Notes:
  511. ------------------------------------------------------------------------------*/
  512. RUN ENDE.
  513. RETURN NO-APPLY.
  514. END PROCEDURE.
  515. /* _UIB-CODE-BLOCK-END */
  516. &ANALYZE-RESUME
  517. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE FINDEN wKundenbesuch
  518. PROCEDURE FINDEN :
  519. /*------------------------------------------------------------------------------
  520. Purpose:
  521. Parameters: <none>
  522. Notes:
  523. ------------------------------------------------------------------------------*/
  524. DEF VAR cRowId AS CHAR NO-UNDO.
  525. DEF VAR iRecid AS RECID NO-UNDO.
  526. DEF VAR cSuch AS CHAR NO-UNDO.
  527. FMutFlag = DYNAMIC-FUNCTION('getMutflagAlt':U) NO-ERROR.
  528. IF FMutFlag THEN RETURN NO-APPLY.
  529. iRecid = ?.
  530. cSuch = 'KUBES,' + STRING(iVertr,'999999').
  531. RUN g-suchen-adresse.w ( INPUT cSuch, OUTPUT iRecid ).
  532. IF iRecid = ? THEN RETURN.
  533. IF iRecid = 0 THEN RETURN.
  534. FIND Adresse NO-LOCK WHERE RECID(Adresse) = iRecid.
  535. FIND FIRST KuBes NO-LOCK USE-INDEX KuBes-k3
  536. WHERE KuBes.Firma = Firma
  537. AND KuBes.Knr = Adresse.Knr NO-ERROR.
  538. IF AVAILABLE KuBes THEN iRecid = RECID(KuBes).
  539. IF iRecid = ? THEN RETURN.
  540. IF iRecid = 0 THEN RETURN.
  541. RUN REPOS IN h_d-kubes ( INPUT iRecid ).
  542. RUN ENTRY_CURSOR.
  543. RETURN NO-APPLY.
  544. END PROCEDURE.
  545. /* _UIB-CODE-BLOCK-END */
  546. &ANALYZE-RESUME
  547. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE FINDEN_NUMMER wKundenbesuch
  548. PROCEDURE FINDEN_NUMMER :
  549. /*------------------------------------------------------------------------------
  550. Purpose:
  551. Parameters: <none>
  552. Notes:
  553. ------------------------------------------------------------------------------*/
  554. DEF VAR iNummer AS INT NO-UNDO.
  555. DEF VAR cRowId AS CHAR NO-UNDO.
  556. FMutFlag = DYNAMIC-FUNCTION('getMutflagAlt':U) NO-ERROR.
  557. IF FMutFlag THEN RETURN NO-APPLY.
  558. /*
  559. RUN g-einlesen-nummer.w (OUTPUT iNummer).
  560. DO WHILE TRUE WITH FRAME {&FRAME-NAME}:
  561. IF iNummer = ? THEN LEAVE.
  562. IF iNummer = 0 THEN LEAVE.
  563. /* FIND Meldung WHERE Meldung.Sprcd = 1 */
  564. /* AND Meldung.MeldNr = iNummer NO-LOCK NO-ERROR. */
  565. /* IF NOT AVAILABLE Meldung THEN LEAVE. */
  566. /* cRowId = STRING(ROWID(Meldung)). */
  567. /* DYNAMIC-FUNCTION('fetchRowIdent':U IN h_d-meldung, cRowid, ?) NO-ERROR. */
  568. LEAVE.
  569. END.
  570. */
  571. APPLY 'U1'.
  572. RETURN NO-APPLY.
  573. END PROCEDURE.
  574. /* _UIB-CODE-BLOCK-END */
  575. &ANALYZE-RESUME
  576. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE initializeObject wKundenbesuch
  577. PROCEDURE initializeObject :
  578. /*------------------------------------------------------------------------------
  579. Purpose: Super Override
  580. Parameters:
  581. Notes:
  582. ------------------------------------------------------------------------------*/
  583. DEF VAR cString AS CHAR NO-UNDO.
  584. DO WITH FRAME {&FRAME-NAME}:
  585. RUN COMBO_VERTRETER ( CB_Suchvertreter:HANDLE ) NO-ERROR.
  586. cString = CB_Suchvertreter:LIST-ITEM-PAIRS.
  587. cString = cString + (IF cString = '' THEN '' ELSE ';')
  588. + 'Alle Vetreter;999999'.
  589. CB_Suchvertreter:LIST-ITEM-PAIRS = cString.
  590. GET-KEY-VALUE SECTION cUser
  591. KEY 'Vertreter'
  592. VALUE cString.
  593. IF cString = ? THEN cString = ''.
  594. IF cString = '' THEN cString = ENTRY(2, CB_Suchvertreter:LIST-ITEM-PAIRS, ';').
  595. CB_Suchvertreter:SCREEN-VALUE = cString NO-ERROR.
  596. END.
  597. RUN SUPER.
  598. iVertr = INTEGER(CB_Suchvertreter:SCREEN-VALUE) NO-ERROR.
  599. PUT-KEY-VALUE SECTION cUser
  600. KEY 'Vertreter'
  601. VALUE STRING(iVertr) NO-ERROR.
  602. { incl/wininitializeobject.i }
  603. /* Oswald Spezial */
  604. IF cInstallation = 'oswald' AND
  605. cBenutzer = 'gt' THEN
  606. DO:
  607. CB_Suchvertreter:SCREEN-VALUE = '000030'.
  608. CB_Suchvertreter:SENSITIVE = FALSE.
  609. iVertr = 30.
  610. END.
  611. PUBLISH 'VERTRETERWECHSEL' ( INPUT iVertr ).
  612. END PROCEDURE.
  613. /* _UIB-CODE-BLOCK-END */
  614. &ANALYZE-RESUME
  615. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE SEITENWECHSEL wKundenbesuch
  616. PROCEDURE SEITENWECHSEL :
  617. /*------------------------------------------------------------------------------
  618. Purpose:
  619. Parameters: <none>
  620. Notes:
  621. ------------------------------------------------------------------------------*/
  622. { incl/winseitenwechsel.i }
  623. END PROCEDURE.
  624. /* _UIB-CODE-BLOCK-END */
  625. &ANALYZE-RESUME
  626. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE selectPage wKundenbesuch
  627. PROCEDURE selectPage :
  628. /*------------------------------------------------------------------------------
  629. Purpose: Super Override
  630. Parameters:
  631. Notes:
  632. ------------------------------------------------------------------------------*/
  633. DEF INPUT PARAMETER piPageNum AS INT NO-UNDO.
  634. DEF VAR FMutFlag AS LOG NO-UNDO.
  635. DEF VAR MutProg AS CHAR NO-UNDO.
  636. FMutFlag = DYNAMIC-FUNCTION ('getMutflag':U, INPUT Progname) NO-ERROR.
  637. IF FMutFlag THEN RETURN NO-APPLY.
  638. CASE piPageNum:
  639. END CASE.
  640. AktSeite = DYNAMIC-FUNCTION('getCurrentPage':U) NO-ERROR.
  641. CASE AktSeite:
  642. WHEN 1 THEN
  643. DO:
  644. RUN removeLink ( hAktionen , 'TableIO':U , h_v-kubes ) NO-ERROR.
  645. RUN removeLink ( hAktionen , 'TableIO':U , h_v-kubessta ) NO-ERROR.
  646. /* RUN removeLink ( hAktionen , 'Navigation':U , h_d-auftr ). */
  647. END.
  648. WHEN 2 THEN
  649. DO:
  650. RUN removeLink ( hAktionen , 'TableIO':U , h_v-kubesspe ) NO-ERROR.
  651. END.
  652. END CASE.
  653. RUN SUPER( INPUT piPageNum).
  654. END PROCEDURE.
  655. /* _UIB-CODE-BLOCK-END */
  656. &ANALYZE-RESUME
  657. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE TOOLBAR wKundenbesuch
  658. PROCEDURE TOOLBAR :
  659. /*------------------------------------------------------------------------------
  660. Purpose:
  661. Parameters: <none>
  662. Notes:
  663. ------------------------------------------------------------------------------*/
  664. { incl/wintoolbar.i }
  665. END PROCEDURE.
  666. /* _UIB-CODE-BLOCK-END */
  667. &ANALYZE-RESUME
  668. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE viewObject wKundenbesuch
  669. PROCEDURE viewObject :
  670. /*------------------------------------------------------------------------------
  671. Purpose: Super Override
  672. Parameters:
  673. Notes:
  674. ------------------------------------------------------------------------------*/
  675. RUN SUPER.
  676. RUN ENTRY_CURSOR.
  677. END PROCEDURE.
  678. /* _UIB-CODE-BLOCK-END */
  679. &ANALYZE-RESUME
  680. /* ************************ Function Implementations ***************** */
  681. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION getProgname wKundenbesuch
  682. FUNCTION getProgname RETURNS CHARACTER
  683. ( /* parameter-definitions */ ) :
  684. /*------------------------------------------------------------------------------
  685. Purpose:
  686. Notes:
  687. ------------------------------------------------------------------------------*/
  688. RETURN Progname.
  689. END FUNCTION.
  690. /* _UIB-CODE-BLOCK-END */
  691. &ANALYZE-RESUME
  692. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION getSuchVertreter wKundenbesuch
  693. FUNCTION getSuchVertreter RETURNS INT64
  694. ( /* parameter-definitions */ ) :
  695. /*------------------------------------------------------------------------------
  696. Purpose:
  697. Notes:
  698. ------------------------------------------------------------------------------*/
  699. RETURN iVertr.
  700. END FUNCTION.
  701. /* _UIB-CODE-BLOCK-END */
  702. &ANALYZE-RESUME
  703. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION setTableIOLink wKundenbesuch
  704. FUNCTION setTableIOLink RETURNS LOGICAL
  705. ( ipViewer AS CHAR ) :
  706. /*------------------------------------------------------------------------------
  707. Purpose:
  708. Notes:
  709. ------------------------------------------------------------------------------*/
  710. DEF VAR sHandle AS CHAR NO-UNDO.
  711. DEF VAR hTableIO AS HANDLE NO-UNDO.
  712. DEF VAR cViewer AS CHAR NO-UNDO.
  713. sHandle = DYNAMIC-FUNCTION('getTableioTarget':U IN hAktionen ).
  714. hTableIO = WIDGET-HANDLE(ENTRY(01, sHandle)) NO-ERROR.
  715. cViewer = hTableIO:FILE-NAME.
  716. IF cViewer = ipViewer THEN RETURN TRUE.
  717. IF VALID-HANDLE(hTableIO) THEN
  718. DO:
  719. RUN removeLink ( hAktionen , 'TableIO':U , hTableIO ).
  720. END.
  721. CASE ipViewer:
  722. WHEN 'v-kubes.w' THEN
  723. DO:
  724. RUN addLink ( hAktionen, 'TableIO':U, h_v-kubes ).
  725. END.
  726. WHEN 'v-kubessta.w' THEN
  727. DO:
  728. RUN addLink ( hAktionen, 'TableIO':U, h_v-kubessta ).
  729. END.
  730. END CASE.
  731. RETURN TRUE.
  732. END FUNCTION.
  733. /* _UIB-CODE-BLOCK-END */
  734. &ANALYZE-RESUME