| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801 |
- &ANALYZE-SUSPEND _VERSION-NUMBER AB_v10r12 GUI ADM2
- &ANALYZE-RESUME
- &Scoped-define WINDOW-NAME CURRENT-WINDOW
- &Scoped-define FRAME-NAME gEWK
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS gEWK
- /*------------------------------------------------------------------------
- File:
- Description: from cntnrdlg.w - ADM2 SmartDialog Template
- Input Parameters:
- <none>
- Output Parameters:
- <none>
- Author:
- Created:
- ------------------------------------------------------------------------*/
- /* This .W file was created with the Progress AppBuilder. */
- /*----------------------------------------------------------------------*/
- /* Create an unnamed pool to store all the widgets created
- by this procedure. This is a good default which assures
- that this procedure's triggers and internal procedures
- will execute in this procedure's storage, and that proper
- cleanup will occur on deletion of the procedure. */
- CREATE WIDGET-POOL.
- /* *************************** Definitions ************************** */
- /* Parameters Definitions --- */
- /* Local Variable Definitions --- */
- DEF VAR MaxPage AS INT NO-UNDO.
- DEF VAR AktSeite AS INT NO-UNDO.
- DEF VAR FMutFlag AS LOG NO-UNDO.
- DEF VAR VLiArt AS INT NO-UNDO.
- DEF VAR cRetVal AS CHAR NO-UNDO.
- DEF VAR cKey AS CHAR NO-UNDO.
- DEF VAR FAbbruch AS LOG NO-UNDO.
- DEF VAR ix AS INT NO-UNDO.
- DEF VAR Firma AS CHAR NO-UNDO.
- DEF VAR AdFirma AS CHAR NO-UNDO.
- DEF VAR Sprcd AS INT NO-UNDO.
- DEF VAR Bez1 AS CHAR NO-UNDO.
- DEF VAR Bez2 AS CHAR NO-UNDO.
- DEF VAR Gebinde AS CHAR NO-UNDO.
- DEF VAR cJahr AS CHAR NO-UNDO.
- DEF VAR Bestand AS DEC DECIMALS 4 NO-UNDO.
- DEF VAR InvDatum AS DATE NO-UNDO.
- DEF VAR cVorlage AS CHAR NO-UNDO.
- DEF VAR cDaten AS CHAR NO-UNDO.
- DEF VAR cDokument AS CHAR NO-UNDO.
- DEF VAR cDateiName AS CHAR NO-UNDO.
- DEF VAR excelAppl AS COM-HANDLE NO-UNDO.
- DEF VAR cAlt AS CHAR NO-UNDO.
- DEF VAR cNeu AS CHAR NO-UNDO.
- DEF VAR dMenge AS DEC DECIMALS 3 NO-UNDO.
- DEF VAR dLiter AS DEC DECIMALS 3 NO-UNDO.
- DEF VAR cKey1 AS CHAR NO-UNDO.
- DEF VAR cKey2 AS CHAR NO-UNDO.
- DEF VAR cKey3 AS CHAR NO-UNDO.
- DEF VAR cKey4 AS CHAR NO-UNDO.
- DEF VAR cTKey1 AS CHAR NO-UNDO.
- DEF VAR cTKey2 AS CHAR NO-UNDO.
- DEF VAR cTKey3 AS CHAR NO-UNDO.
- DEF VAR cTKey4 AS CHAR NO-UNDO.
- DEF VAR FKey1 AS LOG NO-UNDO.
- DEF VAR FKey2 AS LOG NO-UNDO.
- DEF VAR FKey3 AS LOG NO-UNDO.
- DEF VAR FKey4 AS LOG NO-UNDO.
- DEF VAR LKey1 AS LOG NO-UNDO.
- DEF VAR LKey2 AS LOG NO-UNDO.
- DEF VAR LKey3 AS LOG NO-UNDO.
- DEF VAR LKey4 AS LOG NO-UNDO.
- DEF VAR Zeile1 AS INT NO-UNDO.
- DEF VAR Zeile2 AS INT NO-UNDO.
- DEF STREAM IN_Stream.
- DEF BUFFER BArtst FOR Artst.
- DEF TEMP-TABLE TArtst LIKE Artst
- FIELD InvMenge AS DEC DECIMALS 3
- FIELD InvMengeNeu AS DEC DECIMALS 3
- FIELD InvLiter AS DEC DECIMALS 3.
- DEF TEMP-TABLE TArtbw LIKE Artbw.
- DEF TEMP-TABLE Totale FIELD Sort_1 AS CHAR
- FIELD Menge AS DEC DECIMALS 3
- FIELD Liter AS DEC DECIMALS 3
- FIELD Eingang AS DEC DECIMALS 3
- FIELD Ausgang AS DEC DECIMALS 3
-
- INDEX Totale-k1
- IS UNIQUE PRIMARY
- SORT_1.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
- /* ******************** Preprocessor Definitions ******************** */
- &Scoped-define PROCEDURE-TYPE SmartDialog
- &Scoped-define DB-AWARE no
- &Scoped-define ADM-CONTAINER DIALOG-BOX
- &Scoped-define ADM-SUPPORTED-LINKS Data-Target,Data-Source,Page-Target,Update-Source,Update-Target
- /* Name of designated FRAME-NAME and/or first browse and/or first query */
- &Scoped-define FRAME-NAME gEWK
- /* Standard List Definitions */
- &Scoped-Define ENABLED-OBJECTS RECT-5 RECT-6 RECT-7 CB_LiArt F_VonArtnr ~
- F_VonInhalt F_VonJahr F_BisArtnr F_BisInhalt F_BisJahr F_Herst F_Wgrp ~
- F_VonDatum F_BisDatum T_Abschluss T_Detail Btn_Excel Btn_Cancel
- &Scoped-Define DISPLAYED-OBJECTS CB_LiArt F_VonArtnr F_VonInhalt F_VonJahr ~
- F_BisArtnr F_BisInhalt F_BisJahr F_Herst F_Wgrp F_VonDatum F_BisDatum ~
- T_Abschluss T_Detail
- /* Custom List Definitions */
- /* List-1,List-2,List-3,List-4,List-5,List-6 */
- &Scoped-define List-5 Btn_Excel
- &Scoped-define List-6 F_VonArtnr F_VonInhalt F_VonJahr F_BisArtnr ~
- F_BisInhalt F_BisJahr F_Herst F_Wgrp F_VonDatum F_BisDatum T_Abschluss ~
- T_Detail
- /* _UIB-PREPROCESSOR-BLOCK-END */
- &ANALYZE-RESUME
- /* *********************** Control Definitions ********************** */
- /* Define a dialog box */
- /* Definitions of the field level widgets */
- DEFINE BUTTON Btn_Cancel AUTO-END-KEY
- LABEL "&Abbrechen"
- SIZE 15 BY 1.81.
- DEFINE BUTTON Btn_Excel
- IMAGE-UP FILE "grafik/results%.ico":U
- IMAGE-INSENSITIVE FILE "grafik/results%.ico":U
- LABEL "Excel"
- SIZE 7 BY 1.81.
- DEFINE VARIABLE CB_LiArt AS CHARACTER FORMAT "X(256)":U
- LABEL "Listenart"
- VIEW-AS COMBO-BOX INNER-LINES 5
- LIST-ITEM-PAIRS "Artikel mit EWK-Code","01",
- "EWK Inventar","02",
- "Weinverkäufe","03",
- "Kellerbuchhaltung","04"
- DROP-DOWN-LIST
- SIZE 50 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_BisArtnr AS INTEGER FORMAT "999999":U INITIAL 0
- LABEL "--"
- VIEW-AS FILL-IN NATIVE
- SIZE 11 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_BisDatum AS DATE FORMAT "99.99.9999":U
- LABEL "--"
- VIEW-AS FILL-IN NATIVE
- SIZE 16 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_BisInhalt AS INTEGER FORMAT "9999":U INITIAL 0
- VIEW-AS FILL-IN NATIVE
- SIZE 7 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_BisJahr AS INTEGER FORMAT "9999":U INITIAL 0
- VIEW-AS FILL-IN NATIVE
- SIZE 7 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_Herst AS CHARACTER FORMAT "X(256)":U
- LABEL "Hersteller"
- VIEW-AS FILL-IN NATIVE
- SIZE 53 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_VonArtnr AS INTEGER FORMAT "999999":U INITIAL 0
- LABEL "von - bis Artikelnummer"
- VIEW-AS FILL-IN NATIVE
- SIZE 11 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_VonDatum AS DATE FORMAT "99.99.9999":U
- LABEL "von - bis Datum"
- VIEW-AS FILL-IN NATIVE
- SIZE 16 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_VonInhalt AS INTEGER FORMAT "9999":U INITIAL 0
- VIEW-AS FILL-IN NATIVE
- SIZE 7 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_VonJahr AS INTEGER FORMAT "9999":U INITIAL 0
- VIEW-AS FILL-IN NATIVE
- SIZE 7 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_Wgrp AS CHARACTER FORMAT "X(256)":U
- LABEL "Warengruppe"
- VIEW-AS FILL-IN NATIVE
- SIZE 53 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE RECTANGLE RECT-5
- EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
- SIZE 90 BY 1.95.
- DEFINE RECTANGLE RECT-6
- EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
- SIZE 90 BY 4.95.
- DEFINE RECTANGLE RECT-7
- EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
- SIZE 90 BY 2.95.
- DEFINE VARIABLE T_Abschluss AS LOGICAL INITIAL no
- LABEL "Inventar abschliessen"
- VIEW-AS TOGGLE-BOX
- SIZE 31.8 BY 1 NO-UNDO.
- DEFINE VARIABLE T_Detail AS LOGICAL INITIAL no
- LABEL "ohne Artikel/Kunden-Detail"
- VIEW-AS TOGGLE-BOX
- SIZE 31.8 BY 1 NO-UNDO.
- /* ************************ Frame Definitions *********************** */
- DEFINE FRAME gEWK
- CB_LiArt AT ROW 2 COL 18 COLON-ALIGNED
- F_VonArtnr AT ROW 5 COL 28 COLON-ALIGNED
- F_VonInhalt AT ROW 5 COL 39 COLON-ALIGNED NO-LABEL
- F_VonJahr AT ROW 5 COL 46 COLON-ALIGNED NO-LABEL
- F_BisArtnr AT ROW 5 COL 56 COLON-ALIGNED
- F_BisInhalt AT ROW 5 COL 67 COLON-ALIGNED NO-LABEL
- F_BisJahr AT ROW 5 COL 74 COLON-ALIGNED NO-LABEL
- F_Herst AT ROW 6 COL 28 COLON-ALIGNED
- F_Wgrp AT ROW 7 COL 28 COLON-ALIGNED
- F_VonDatum AT ROW 8 COL 28 COLON-ALIGNED
- F_BisDatum AT ROW 8 COL 47 COLON-ALIGNED
- T_Abschluss AT ROW 11 COL 30
- T_Detail AT ROW 12 COL 30
- Btn_Excel AT ROW 14 COL 3.8
- Btn_Cancel AT ROW 14 COL 78
- RECT-5 AT ROW 1.48 COL 3
- RECT-6 AT ROW 4.52 COL 3
- RECT-7 AT ROW 10.52 COL 3
- SPACE(1.79) SKIP(3.23)
- WITH VIEW-AS DIALOG-BOX KEEP-TAB-ORDER
- SIDE-LABELS NO-UNDERLINE THREE-D SCROLLABLE
- TITLE "Weinkellerbuchhaltung"
- CANCEL-BUTTON Btn_Cancel.
- /* *********************** Procedure Settings ************************ */
- &ANALYZE-SUSPEND _PROCEDURE-SETTINGS
- /* Settings for THIS-PROCEDURE
- Type: SmartDialog
- Allow: Basic,Browse,DB-Fields,Query,Smart
- Container Links: Data-Target,Data-Source,Page-Target,Update-Source,Update-Target
- Design Page: 1
- Other Settings: COMPILE
- */
- &ANALYZE-RESUME _END-PROCEDURE-SETTINGS
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB gEWK
- /* ************************* Included-Libraries *********************** */
- {src/adm2/containr.i}
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- /* *********** Runtime Attributes and AppBuilder Settings *********** */
- &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES
- /* SETTINGS FOR DIALOG-BOX gEWK
- FRAME-NAME */
- ASSIGN
- FRAME gEWK:SCROLLABLE = FALSE
- FRAME gEWK:HIDDEN = TRUE.
- /* SETTINGS FOR BUTTON Btn_Excel IN FRAME gEWK
- 5 */
- /* SETTINGS FOR FILL-IN F_BisArtnr IN FRAME gEWK
- 6 */
- /* SETTINGS FOR FILL-IN F_BisDatum IN FRAME gEWK
- 6 */
- /* SETTINGS FOR FILL-IN F_BisInhalt IN FRAME gEWK
- 6 */
- /* SETTINGS FOR FILL-IN F_BisJahr IN FRAME gEWK
- 6 */
- /* SETTINGS FOR FILL-IN F_Herst IN FRAME gEWK
- 6 */
- /* SETTINGS FOR FILL-IN F_VonArtnr IN FRAME gEWK
- 6 */
- /* SETTINGS FOR FILL-IN F_VonDatum IN FRAME gEWK
- 6 */
- /* SETTINGS FOR FILL-IN F_VonInhalt IN FRAME gEWK
- 6 */
- /* SETTINGS FOR FILL-IN F_VonJahr IN FRAME gEWK
- 6 */
- /* SETTINGS FOR FILL-IN F_Wgrp IN FRAME gEWK
- 6 */
- /* SETTINGS FOR TOGGLE-BOX T_Abschluss IN FRAME gEWK
- 6 */
- /* SETTINGS FOR TOGGLE-BOX T_Detail IN FRAME gEWK
- 6 */
- /* _RUN-TIME-ATTRIBUTES-END */
- &ANALYZE-RESUME
- /* Setting information for Queries and Browse Widgets fields */
- &ANALYZE-SUSPEND _QUERY-BLOCK DIALOG-BOX gEWK
- /* Query rebuild information for DIALOG-BOX gEWK
- _Options = "SHARE-LOCK"
- _Query is NOT OPENED
- */ /* DIALOG-BOX gEWK */
- &ANALYZE-RESUME
-
- /* ************************ Control Triggers ************************ */
- &Scoped-define SELF-NAME gEWK
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL gEWK gEWK
- ON END-ERROR OF FRAME gEWK /* Weinkellerbuchhaltung */
- DO:
- RUN ENDE.
- RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL gEWK gEWK
- ON GO OF FRAME gEWK /* Weinkellerbuchhaltung */
- DO:
- /*
- RUN ENDE_PROGRAMM ( INPUT THIS-PROCEDURE:FILE-NAME ) NO-ERROR.
- */
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL gEWK gEWK
- ON WINDOW-CLOSE OF FRAME gEWK /* Weinkellerbuchhaltung */
- DO:
- RUN ENDE.
- RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME Btn_Cancel
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_Cancel gEWK
- ON CHOOSE OF Btn_Cancel IN FRAME gEWK /* Abbrechen */
- DO:
- FAbbruch = TRUE.
- RUN ENDE.
- RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME Btn_Excel
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_Excel gEWK
- ON CHOOSE OF Btn_Excel IN FRAME gEWK /* Excel */
- DO:
- DO WITH FRAME {&FRAME-NAME}:
- Btn_Excel:SENSITIVE = FALSE.
- Btn_Cancel:SENSITIVE = FALSE.
- END.
- RUN BEREINIGEN.
- RUN REPORT.
- DO WITH FRAME {&FRAME-NAME}:
- Btn_Excel:SENSITIVE = TRUE.
- Btn_Cancel:SENSITIVE = TRUE.
- END.
- FAbbruch = FALSE.
- RUN ENDE.
- RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME CB_LiArt
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_LiArt gEWK
- ON VALUE-CHANGED OF CB_LiArt IN FRAME gEWK /* Listenart */
- DO:
- VLiArt = INTEGER(SELF:SCREEN-VALUE).
- RUN WERTE_EINLESEN.
- RUN FELDER_AKTIVIEREN ( FRAME {&FRAME-NAME}:CURRENT-ITERATION ).
- DO WITH FRAME {&FRAME-NAME}:
- CASE VLiArt:
- WHEN 1 THEN DO:
- F_VonDatum :SENSITIVE = FALSE.
- F_VonDatum :HIDDEN = TRUE .
- F_BisDatum :SENSITIVE = FALSE.
- F_BisDatum :HIDDEN = TRUE .
- T_Abschluss:SENSITIVE = FALSE.
- T_Abschluss:HIDDEN = TRUE .
- T_Detail :SENSITIVE = FALSE.
- T_Detail :HIDDEN = TRUE .
- END.
- WHEN 2 THEN DO:
- F_BisDatum :SENSITIVE = FALSE.
- F_BisDatum :HIDDEN = TRUE .
- T_Detail :SENSITIVE = FALSE.
- T_Detail :HIDDEN = TRUE .
- F_VonDatum :LABEL = 'Inventardatum'.
- END.
- WHEN 3 THEN DO:
- T_Abschluss:SENSITIVE = FALSE.
- T_Abschluss:HIDDEN = TRUE .
- F_VonDatum :LABEL = 'von - bis Datum'.
- END.
- WHEN 4 THEN DO:
- T_Abschluss:SENSITIVE = FALSE.
- T_Abschluss:HIDDEN = TRUE .
- F_VonDatum :LABEL = 'von - bis Datum'.
- END.
- END CASE.
- END.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME F_Herst
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Herst gEWK
- ON ANY-PRINTABLE OF F_Herst IN FRAME gEWK /* Hersteller */
- DO:
- IF CHR(LASTKEY) = ',' THEN RETURN.
- IF CHR(LASTKEY) < '0' THEN RETURN NO-APPLY.
- IF CHR(LASTKEY) > '9' THEN RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Herst gEWK
- ON LEFT-MOUSE-DBLCLICK OF F_Herst IN FRAME gEWK /* Hersteller */
- DO:
- RUN g-auswahl-tabelle.w ( INPUT SELF:HANDLE, INPUT 'HERST' ).
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME F_Wgrp
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Wgrp gEWK
- ON ANY-PRINTABLE OF F_Wgrp IN FRAME gEWK /* Warengruppe */
- DO:
- IF CHR(LASTKEY) = ',' THEN RETURN.
- IF CHR(LASTKEY) < '0' THEN RETURN NO-APPLY.
- IF CHR(LASTKEY) > '9' THEN RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Wgrp gEWK
- ON LEFT-MOUSE-DBLCLICK OF F_Wgrp IN FRAME gEWK /* Warengruppe */
- DO:
- RUN g-auswahl-wgr.w ( INPUT SELF:HANDLE ).
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &UNDEFINE SELF-NAME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK gEWK
- /* *************************** Main Block *************************** */
- MaxPage = 1.
- AktSeite = 1.
- FAbbruch = FALSE.
- SESSION:DATA-ENTRY-RETURN = TRUE.
- SUBSCRIBE TO 'TOOLBAR' ANYWHERE.
- Firma = DYNAMIC-FUNCTION('GETMANDANT':U) NO-ERROR.
- AdFirma = DYNAMIC-FUNCTION('GETADMANDANT':U) NO-ERROR.
- /* TRIGGERS ------------------------------------------------------ */
- ON 'ALT-CURSOR-RIGHT':U OF FRAME {&FRAME-NAME} ANYWHERE
- DO:
- RUN NEXTPAGE.
- END.
- ON 'ALT-CURSOR-LEFT':U OF FRAME {&FRAME-NAME} ANYWHERE
- DO:
- RUN PREVPAGE.
- END.
- ON 'U1':U OF {&WINDOW-NAME} ANYWHERE
- DO:
- RUN ENTRY_CURSOR.
- END.
- /*
- ON 'PAGE-DOWN':U OF {&WINDOW-NAME} ANYWHERE
- DO:
- RUN TOOLBAR IN h_dyntoolbar ( INPUT 'Next':U ).
- END.
- ON 'PAGE-UP':U OF {&WINDOW-NAME} ANYWHERE
- DO:
- RUN TOOLBAR IN h_dyntoolbar ( INPUT 'Prev':U ).
- END.
-
- ON 'ALT-RETURN':U OF FRAME {&FRAME-NAME} ANYWHERE
- DO:
- RUN TOOLBAR IN h_dyntoolbar ( INPUT 'UPDATE':U ).
- END.
- ON 'ALT-INS':U OF FRAME {&FRAME-NAME} ANYWHERE
- DO:
- RUN TOOLBAR IN h_dyntoolbar ( INPUT 'ADD':U ).
- END.
- ON 'ALT-DEL':U OF FRAME {&FRAME-NAME} ANYWHERE
- DO:
- RUN TOOLBAR IN h_dyntoolbar ( INPUT 'DELETE':U ).
- END.
- ON 'ALT-R':U OF FRAME {&FRAME-NAME} ANYWHERE
- DO:
- RUN TOOLBAR IN h_dyntoolbar ( INPUT 'RESET':U ).
- END.
- ON 'F9':U OF FRAME {&FRAME-NAME} ANYWHERE
- DO:
- RUN TOOLBAR IN h_dyntoolbar ( INPUT 'SAVE':U ).
- END.
- ON 'ALT-S':U OF FRAME {&FRAME-NAME} ANYWHERE
- DO:
- RUN TOOLBAR IN h_dyntoolbar ( INPUT 'SAVE':U ).
- END.
- ON 'ALT-K':U OF FRAME {&FRAME-NAME} ANYWHERE
- DO:
- RUN TOOLBAR IN h_dyntoolbar ( INPUT 'COPY':U ).
- END.
- ON 'END-ERROR':U OF FRAME {&FRAME-NAME} ANYWHERE
- DO:
- FMutFlag = DYNAMIC-FUNCTION('getMutflagAlt':U) NO-ERROR.
- IF FMutFlag = FALSE THEN DO:
- RUN ENDE.
- RETURN NO-APPLY.
- END.
- RUN TOOLBAR IN h_dyntoolbar ( INPUT 'CANCEL':U ).
- RETURN NO-APPLY.
- END.
- */
- /* ------------------------------------------------------------------ */
- {src/adm2/dialogmn.i}
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- /* ********************** Internal Procedures *********************** */
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE adm-create-objects gEWK _ADM-CREATE-OBJECTS
- PROCEDURE adm-create-objects :
- /*------------------------------------------------------------------------------
- Purpose: Create handles for all SmartObjects used in this procedure.
- After SmartObjects are initialized, then SmartLinks are added.
- Parameters: <none>
- ------------------------------------------------------------------------------*/
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE AUSGABE01 gEWK
- PROCEDURE AUSGABE01 :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DEF VAR io AS LOG NO-UNDO.
- DEF VAR Zelle AS CHAR NO-UNDO.
- cVorlage = 'EWKArtikel.xls'.
- cDokument = 'EWKArtikel.xls'.
- cDaten = 'EWKArtikel.txt'.
- cAlt = ''.
- cNeu = ''.
- FKey1 = FALSE.
- FKey2 = FALSE.
- FKey3 = FALSE.
- FKey4 = FALSE.
- Sprcd = DYNAMIC-FUNCTION('GETFWSPRCD':U) NO-ERROR.
- cDateiName = cDokument + CHR(01) + cVorlage.
- RUN CREATEDATEI ( INPUT cDateiName ).
- IF RETURN-VALUE BEGINS 'ERROR' THEN RETURN NO-APPLY.
- cDokument = RETURN-VALUE.
- cDateiName = cDaten.
- RUN CREATEDATEI ( INPUT cDateiName ).
- IF RETURN-VALUE BEGINS 'ERROR' THEN RETURN NO-APPLY.
- cDaten = RETURN-VALUE.
- FOR EACH TArtst:
- DELETE TArtst.
- END.
- FOR EACH Artst USE-INDEX Artst-k1
- WHERE Artst.Firma = Firma
- AND Artst.Artnr >= F_VonArtnr
- AND Artst.Artnr <= F_BisArtnr
- AND Artst.Inhalt >= F_VonInhalt
- AND Artst.Inhalt <= F_BisInhalt
- AND Artst.Jahr >= F_VonJahr
- AND Artst.Jahr <= F_BisJahr
- AND Artst.WHK_Code <> ''
- AND Artst.Aktiv = TRUE NO-LOCK:
- IF Artst.Ausverk = 9 THEN DO:
- IF Artst.Bestand = 0 THEN NEXT.
- END.
- IF F_Herst <> '' THEN DO:
- IF LOOKUP(STRING(Artst.Herst ,'999'), F_Herst, ',') = 0 THEN NEXT.
- END.
- IF F_Wgrp <> '' THEN DO:
- IF LOOKUP(STRING(Artst.Wg_Grp,'999'), F_Wgrp , ',') = 0 THEN NEXT.
- END.
- CREATE TArtst.
- BUFFER-COPY Artst TO TArtst.
- END.
- OUTPUT TO VALUE(cDaten).
- PUT CONTROL '£' CHR(10)
- '£' CHR(10)
- '£Artnr£Artikel£££Inhalt£Jahr£Code' CHR(10)
- '£' CHR(10).
- FOR EACH TArtst NO-LOCK
- BREAK BY TArtst.WHK_Code
- BY TArtst.Bez :
- IF FIRST-OF(TArtst.WHK_Code) THEN DO:
- cNeu = TArtst.WHK_Code.
- RUN SCHLUESSEL.
- IF FKey1 AND cKey1 <> '' THEN PUT CONTROL cKey1 CHR(10).
- IF FKey2 AND cKey2 <> '' THEN PUT CONTROL cKey2 CHR(10).
- IF FKey3 AND cKey3 <> '' THEN PUT CONTROL cKey3 CHR(10).
- IF FKey4 AND cKey4 <> '' THEN PUT CONTROL cKey4 CHR(10).
- END.
- FIND ArtBez USE-INDEX ArtBez-k1
- WHERE ArtBez.Firma = Firma
- AND ArtBez.Artnr = TArtst.Artnr
- AND ArtBez.Inhalt = TArtst.Inhalt
- AND ArtBez.Jahr = TArtst.Jahr
- AND ArtBez.Sprcd = Sprcd NO-LOCK NO-ERROR.
- IF NOT AVAILABLE Artbez THEN DO:
- FIND FIRST ArtBez USE-INDEX ArtBez-k1
- WHERE ArtBez.Firma = Firma
- AND ArtBez.Artnr = TArtst.Artnr
- AND ArtBez.Inhalt = TArtst.Inhalt
- AND ArtBez.Jahr = TArtst.Jahr
- NO-LOCK NO-ERROR.
- END.
- IF AVAILABLE ArtBez THEN ASSIGN Bez1 = ArtBez.Bez1
- Bez2 = ArtBez.Bez2.
- ELSE ASSIGN Bez1 = '??????????'
- Bez2 = ''.
- FIND KGebinde USE-INDEX KGebinde-k1
- WHERE KGebinde.Firma = TArtst.Firma
- AND KGebinde.Geb_Cd = TArtst.KGeb_Cd NO-LOCK NO-ERROR.
- IF AVAILABLE KGebinde THEN Gebinde = STRING(KGebinde.Inhalt / 100,'>>9.99 l').
- ELSE Gebinde = TArtst.KGeb_Cd + ' ?????'.
- IF TArtst.Jahr > 10 THEN cJahr = STRING(TArtst.Jahr,'9999').
- ELSE cJahr = ''.
- PUT CONTROL '£'
- STRING(TArtst.Artnr,'999999') '£'
- Bez1 '£££'
- Gebinde '£'
- cJahr '£'
- TArtst.WHK_Code CHR(10).
- IF Bez2 <> '' THEN PUT CONTROL '££' Bez2 CHR(10).
- IF LAST-OF ( TArtst.WHK_Code ) THEN DO:
- cNeu = TArtst.WHK_Code.
- RUN LETZTER.
- PUT CONTROL '£' CHR(10).
- END.
- END.
- OUTPUT CLOSE.
- excelAppl = DYNAMIC-FUNCTION('CREATEEXCEL':U) NO-ERROR.
- IF NOT VALID-HANDLE(excelAppl) THEN DO:
- RUN FEHLER ( INPUT 1035 ).
- RETURN.
- END.
- RUN OPENEXCEL ( INPUT excelAppl, INPUT cDokument, INPUT '', OUTPUT io ).
- IF NOT io THEN DO:
- RUN FEHLER ( INPUT 1040 ).
- DYNAMIC-FUNCTION('RELEASEEXCEL':U, INPUT excelAppl ) NO-ERROR.
- RETURN NO-APPLY.
- END.
- Zelle = 'A1'.
- excelAppl:Range(Zelle):SELECT.
- excelAppl:Selection:FormulaR1C1 = 'TEXT;' + cDaten.
- excelAppl:Application:RUN ( 'DateiEinfügen' ).
- RUN KOPF ( INPUT excelAppl ).
- Zelle = 'A1'.
- excelAppl:Range(Zelle):SELECT.
- excelAppl:Selection:ColumnWidth = 0.3.
-
- DYNAMIC-FUNCTION('RELEASEEXCEL':U, INPUT excelAppl ) NO-ERROR.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE AUSGABE02 gEWK
- PROCEDURE AUSGABE02 :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DEF VAR io AS LOG NO-UNDO.
- DEF VAR Zelle AS CHAR NO-UNDO.
- DEF VAR cSort AS CHAR NO-UNDO.
- DEF VAR i1 AS INT NO-UNDO.
- DEF VAR i2 AS INT NO-UNDO.
- DEF VAR Anz AS INT NO-UNDO.
- DEF VAR Menge AS DEC DECIMALS 3 NO-UNDO.
- DEF VAR Liter AS DEC DECIMALS 3 NO-UNDO.
- DEF VAR cString AS CHAR NO-UNDO.
- cVorlage = 'EWKInventar.xls'.
- cDokument = 'EWKInventar.xls'.
- cDaten = 'EWKInventar.txt'.
- cAlt = ''.
- cNeu = ''.
- FKey1 = FALSE.
- FKey2 = FALSE.
- FKey3 = FALSE.
- FKey4 = FALSE.
- Sprcd = DYNAMIC-FUNCTION('GETFWSPRCD':U) NO-ERROR.
- InvDatum = F_VonDatum.
- cDateiName = cDokument + CHR(01) + cVorlage.
- RUN CREATEDATEI ( INPUT cDateiName ).
- IF RETURN-VALUE BEGINS 'ERROR' THEN RETURN NO-APPLY.
- cDokument = RETURN-VALUE.
- cDateiName = cDaten.
- RUN CREATEDATEI ( INPUT cDateiName ).
- IF RETURN-VALUE BEGINS 'ERROR' THEN RETURN NO-APPLY.
- cDaten = RETURN-VALUE.
- FOR EACH TArtst:
- DELETE TArtst.
- END.
- FOR EACH Totale:
- DELETE Totale.
- END.
- FOR EACH BArtst USE-INDEX Artst-k1
- WHERE BArtst.Firma = Firma
- AND BArtst.Artnr >= F_VonArtnr
- AND BArtst.Artnr <= F_BisArtnr
- AND BArtst.Inhalt >= F_VonInhalt
- AND BArtst.Inhalt <= F_BisInhalt
- AND BArtst.Jahr >= F_VonJahr
- AND BArtst.Jahr <= F_BisJahr
- AND BArtst.WHK_Code <> ''
- AND BArtst.Lager = TRUE NO-LOCK:
- DO WHILE TRUE:
- io = TRUE.
- IF BArtst.Aktiv THEN LEAVE.
- IF BArtst.MDat >= InvDatum THEN LEAVE.
- io = FALSE.
- LEAVE.
- END.
- IF NOT io THEN NEXT.
- IF F_Herst <> '' THEN DO:
- IF LOOKUP(STRING(BArtst.Herst ,'999'), F_Herst, ',') = 0 THEN NEXT.
- END.
- IF F_Wgrp <> '' THEN DO:
- IF LOOKUP(STRING(BArtst.Wg_Grp,'999'), F_Wgrp , ',') = 0 THEN NEXT.
- END.
- RUN INVENTARBESTAND.
- IF Bestand = ? THEN NEXT.
- IF Bestand = 0 THEN NEXT.
- CREATE TArtst.
- BUFFER-COPY BArtst TO TArtst.
- TArtst.InvMenge = Bestand.
- END.
- OUTPUT TO VALUE(cDaten).
- PUT CONTROL '£' CHR(10)
- '£' CHR(10)
- '£££Jahr£Inhalt/£Anzahl£Total' CHR(10)
- '£Artnr£Artikel£gang£Einheit£Einheiten£Liter' CHR(10)
- '£' CHR(10).
- Menge = 0.
- Liter = 0.
- FOR EACH TArtst BREAK BY TArtst.WHK_Code
- BY TArtst.Artnr
- BY TArtst.Inhalt
- BY TArtst.Jahr :
- IF FIRST-OF(TArtst.WHK_Code) THEN DO:
- cNeu = TArtst.WHK_Code.
- IF NOT FIRST (TArtst.WHK_Code) THEN DO:
- RUN LETZTER.
- RUN TOTALE02.
- END.
- RUN SCHLUESSEL.
- IF FKey1 AND cKey1 <> '' THEN PUT CONTROL cKey1 CHR(10).
- IF FKey2 AND cKey2 <> '' THEN PUT CONTROL cKey2 CHR(10).
- IF FKey3 AND cKey3 <> '' THEN PUT CONTROL cKey3 CHR(10).
- IF FKey4 AND cKey4 <> '' THEN PUT CONTROL cKey4 CHR(10).
- Anz = 0.
- END.
- FIND ArtBez USE-INDEX ArtBez-k1
- WHERE ArtBez.Firma = Firma
- AND ArtBez.Artnr = TArtst.Artnr
- AND ArtBez.Inhalt = TArtst.Inhalt
- AND ArtBez.Jahr = TArtst.Jahr
- AND ArtBez.Sprcd = Sprcd NO-LOCK NO-ERROR.
- IF NOT AVAILABLE ArtBez THEN DO:
- FIND FIRST ArtBez USE-INDEX ArtBez-k1
- WHERE ArtBez.Firma = Firma
- AND ArtBez.Artnr = TArtst.Artnr
- AND ArtBez.Inhalt = TArtst.Inhalt
- AND ArtBez.Jahr = TArtst.Jahr NO-LOCK NO-ERROR.
- END.
- IF AVAILABLE ArtBez THEN ASSIGN Bez1 = ArtBez.Bez1
- Bez2 = ArtBez.Bez2.
- ELSE ASSIGN Bez1 = '??????????'
- Bez2 = ''.
- FIND KGebinde USE-INDEX KGebinde-k1
- WHERE KGebinde.Firma = TArtst.Firma
- AND KGebinde.Geb_Cd = TArtst.KGeb_Cd NO-LOCK NO-ERROR.
- IF AVAILABLE KGebinde THEN Gebinde = STRING(KGebinde.Inhalt / 100,'>>9.99 l').
- ELSE Gebinde = TArtst.KGeb_Cd + ' ?????'.
- IF TArtst.Jahr > 10 THEN cJahr = STRING(TArtst.Jahr,'9999').
- ELSE cJahr = ''.
- TArtst.InvLiter = TArtst.InvMenge * KGebinde.Inhalt / 100.
- DO i1 = 1 TO 4:
- i2 = ((i1 - 1) * 2) + 1.
- IF SUBSTRING(TArtst.WHK_Code,i2,02) = '00' THEN LEAVE.
- i2 = i1 * 2.
- cSort = SUBSTRING(TArtst.WHK_Code,01,i2).
- FIND FIRST Totale WHERE Totale.Sort_1 = cSort NO-ERROR.
- IF NOT AVAILABLE Totale THEN DO:
- CREATE Totale.
- ASSIGN Totale.Sort_1 = cSort.
- END.
- Totale.Menge = Totale.Menge + TArtst.InvMenge.
- Totale.Liter = Totale.Liter + TArtst.InvLiter.
- END.
- PUT CONTROL '£'
- STRING(TArtst.Artnr ,'999999') '£'
- Bez1 '£'
- cJahr '£'
- Gebinde '£'
- STRING(TArtst.InvMenge ,'->>>>,>>9.99') '£'
- STRING(TArtst.InvLiter ,'->>>>,>>9.99') CHR(10).
- IF Bez2 <> '' THEN PUT CONTROL '££' Bez2 CHR(10).
- Anz = Anz + 1.
- dMenge = TArtst.InvMenge.
- dLiter = TArtst.InvLiter.
- Menge = Menge + TArtst.InvMenge.
- Liter = Liter + TArtst.InvLiter.
- IF LAST ( TArtst.WHK_Code ) THEN DO:
- LKey1 = TRUE.
- LKey2 = TRUE.
- LKey3 = TRUE.
- LKey4 = TRUE.
- IF SUBSTRING(cAlt,01,02) = '00' THEN LKey1 = FALSE.
- IF SUBSTRING(cAlt,03,02) = '00' THEN LKey2 = FALSE.
- IF SUBSTRING(cAlt,05,02) = '00' THEN LKey3 = FALSE.
- IF SUBSTRING(cAlt,07,02) = '00' THEN LKey4 = FALSE.
- RUN TOTALE02.
- END.
- END.
- PUT CONTROL '££Gesamttotal£££'
- STRING(Menge,'->>>>,>>9.99') '£'
- STRING(Liter,'->>>>,>>9.99') CHR(10)
- 'ENDE' CHR(10).
- FOR EACH Totale BREAK BY SUBSTRING(Totale.Sort_1,01,02):
- cAlt = '99999999'.
- cNeu = Totale.Sort_1.
- RUN SCHLUESSEL.
- IF LENGTH(Totale.Sort_1) = 2
- THEN cString = Totale.Sort_1 + '£' + cKey1 + '£££££'.
- IF LENGTH(Totale.Sort_1) = 4
- THEN cString = Totale.Sort_1 + '£' + cKey2 + '££££'.
- IF LENGTH(Totale.Sort_1) = 6
- THEN cString = Totale.Sort_1 + '£' + cKey3 + '£££'.
- IF LENGTH(Totale.Sort_1) = 8
- THEN cString = Totale.Sort_1 + '£' + cKey4 + '££'.
-
- PUT CONTROL cString
- STRING(Totale.Liter,'->>>>,>>9.99') CHR(10).
- IF LAST-OF ( SUBSTRING(Totale.Sort_1,01,02) ) THEN PUT CONTROL '£' CHR(10).
- END.
- PUT CONTROL '£' CHR(10).
- PUT CONTROL '£Gesamttotal£££££'
- STRING(Liter,'->>>>,>>9.99') CHR(10)
- '£' CHR(10).
- OUTPUT CLOSE.
- Zeile1 = 0.
- Zeile2 = 0.
- io = FALSE.
- INPUT STREAM In_Stream FROM VALUE(cDaten) NO-ECHO NO-MAP.
- REPEAT ON STOP UNDO, LEAVE WITH FRAME f_Print:
- IMPORT STREAM In_Stream UNFORMATTED cSort.
- IF NOT io THEN Zeile1 = Zeile1 + 1.
- Zeile2 = Zeile2 + 1.
- IF cSort BEGINS 'ENDE' THEN io = TRUE.
- END.
- INPUT STREAM In_Stream CLOSE.
- excelAppl = DYNAMIC-FUNCTION('CREATEEXCEL':U) NO-ERROR.
- IF NOT VALID-HANDLE(excelAppl) THEN DO:
- RUN FEHLER ( INPUT 1035 ).
- RETURN.
- END.
- RUN OPENEXCEL ( INPUT excelAppl, INPUT cDokument, INPUT '', OUTPUT io ).
- IF NOT io THEN DO:
- RUN FEHLER ( INPUT 1040 ).
- DYNAMIC-FUNCTION('RELEASEEXCEL':U, INPUT excelAppl ) NO-ERROR.
- RETURN NO-APPLY.
- END.
- Zelle = 'A1'.
- excelAppl:Sheets("Liste"):Select.
- excelAppl:Range(Zelle):Select.
- excelAppl:Selection:FormulaR1C1 = 'TEXT;' + cDaten.
- excelAppl:Application:RUN ( 'DateiEinfügen' ).
- RUN KOPF ( INPUT excelAppl ).
- Zelle = 'A1'.
- excelAppl:Range(Zelle):Select.
- excelAppl:Selection:ColumnWidth = 0.3.
-
- Zelle = 'A' + STRING(Zeile1).
- excelAppl:Range(Zelle):Select.
- excelAppl:Selection:FormulaR1C1 = ''.
- Zeile1 = Zeile1 + 1.
- excelAppl:Selection:CUT.
- Zelle = 'A' + STRING(Zeile1) + ':H' + STRING(Zeile2).
- excelAppl:Range(Zelle):Select.
- excelAppl:Selection:CUT.
- Zelle = 'A10'.
- excelAppl:Sheets("Total"):Select.
- excelAppl:Range(Zelle):Select.
- excelAppl:ActiveSheet:Paste.
- excelAppl:Application:CutCopyMode = FALSE.
- i1 = Zeile2 - Zeile1.
- Zelle = 'A10:C' + STRING(10 + i1).
- excelAppl:Range(Zelle):Select.
- excelAppl:Selection:HorizontalAlignment = -4131.
- excelAppl:Selection:Font:Bold = False.
- Zelle = 'A10:C14'.
- excelAppl:Sheets("Texte"):Select.
- excelAppl:Range(Zelle):Select.
- excelAppl:Selection:COPY.
- excelAppl:Sheets("Total"):Select.
- Zelle = 'A' + STRING(10 + i1 + 4).
- excelAppl:Range(Zelle):Select.
- excelAppl:ActiveSheet:Paste.
- excelAppl:Application:CutCopyMode = FALSE.
- Zelle = 'A1'.
- excelAppl:Range(Zelle):Select.
- excelAppl:Sheets("Liste"):Select.
- excelAppl:Range(Zelle):Select.
- DYNAMIC-FUNCTION('RELEASEEXCEL':U, INPUT excelAppl ) NO-ERROR.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE AUSGABE03 gEWK
- PROCEDURE AUSGABE03 :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DEF VAR io AS LOG NO-UNDO.
- DEF VAR Zelle AS CHAR NO-UNDO.
- DEF VAR cSort AS CHAR NO-UNDO.
- DEF VAR i1 AS INT NO-UNDO.
- DEF VAR i2 AS INT NO-UNDO.
- DEF VAR Anz AS INT NO-UNDO.
- DEF VAR Datum AS DATE NO-UNDO.
- DEF VAR cAdr AS CHAR NO-UNDO.
- DEF VAR aMenge AS DEC DECIMALS 3 NO-UNDO.
- DEF VAR aLiter AS DEC DECIMALS 3 NO-UNDO.
- DEF VAR gMenge AS DEC DECIMALS 3 NO-UNDO.
- DEF VAR gLiter AS DEC DECIMALS 3 NO-UNDO.
- cVorlage = 'EWKVerkäufe.xls'.
- cDokument = 'EWKVerkäufe.xls'.
- cDaten = 'EWKVerkäufe.txt'.
- cAlt = ''.
- cNeu = ''.
- FKey1 = FALSE.
- FKey2 = FALSE.
- FKey3 = FALSE.
- FKey4 = FALSE.
- Sprcd = DYNAMIC-FUNCTION('GETFWSPRCD':U) NO-ERROR.
- InvDatum = F_VonDatum.
- cDateiName = cDokument + CHR(01) + cVorlage.
- RUN CREATEDATEI ( INPUT cDateiName ).
- IF RETURN-VALUE BEGINS 'ERROR' THEN RETURN NO-APPLY.
- cDokument = RETURN-VALUE.
- cDateiName = cDaten.
- RUN CREATEDATEI ( INPUT cDateiName ).
- IF RETURN-VALUE BEGINS 'ERROR' THEN RETURN NO-APPLY.
- cDaten = RETURN-VALUE.
- EMPTY TEMP-TABLE tArtst.
- EMPTY TEMP-TABLE Totale.
- EMPTY TEMP-TABLE tArtbw.
- FOR EACH BArtst USE-INDEX Artst-k1
- WHERE BArtst.Firma = Firma
- AND BArtst.Artnr >= F_VonArtnr
- AND BArtst.Artnr <= F_BisArtnr
- AND BArtst.Inhalt >= F_VonInhalt
- AND BArtst.Inhalt <= F_BisInhalt
- AND BArtst.Jahr >= F_VonJahr
- AND BArtst.Jahr <= F_BisJahr
- AND BArtst.WHK_Code <> ''
- AND BArtst.Lager = TRUE NO-LOCK:
- DO WHILE TRUE:
- io = TRUE.
- IF BArtst.Aktiv THEN LEAVE.
- IF BArtst.MDat >= F_VonDatum THEN LEAVE.
- io = FALSE.
- LEAVE.
- END.
- IF NOT io THEN NEXT.
- IF F_Herst <> '' THEN DO:
- IF LOOKUP(STRING(BArtst.Herst ,'999'), F_Herst, ',') = 0 THEN NEXT.
- END.
- IF F_Wgrp <> '' THEN DO:
- IF LOOKUP(STRING(BArtst.Wg_Grp,'999'), F_Wgrp , ',') = 0 THEN NEXT.
- END.
- CREATE tArtst.
- BUFFER-COPY BArtst TO tArtst.
- END.
- FOR EACH tArtst:
- Anz = 0.
- FOR EACH Artbw USE-INDEX Artbw-k2
- WHERE Artbw.Firma = tArtst.Firma
- AND Artbw.Artnr = tArtst.Artnr
- AND Artbw.Inhalt = tArtst.Inhalt
- AND Artbw.Jahr = tArtst.Jahr
- AND Artbw.Datum >= F_VonDatum
- AND Artbw.Datum <= F_BisDatum
- AND Artbw.Lag_Buch = TRUE
- AND Artbw.Tr_Art < 09 NO-LOCK:
- Anz = Anz + 1.
- IF T_Detail AND
- Artbw.Tr_Art <> 9 THEN DO:
- Datum = DATE(MONTH(Artbw.Datum),01,YEAR(Artbw.Datum)).
- IF Datum < F_VonDatum THEN Datum = F_VonDatum.
- FIND FIRST tArtbw USE-INDEX Artbw-k2
- WHERE tArtbw.Firma = Artbw.Firma
- AND tArtbw.Artnr = Artbw.Artnr
- AND tArtbw.Inhalt = Artbw.Inhalt
- AND tArtbw.Jahr = Artbw.Jahr
- AND tArtbw.Datum = Datum NO-ERROR.
- IF NOT AVAILABLE tArtbw THEN DO:
- CREATE tArtbw.
- BUFFER-COPY Artbw TO tArtbw
- ASSIGN tArtbw.Datum = Datum
- tArtbw.Faknr = 0
- tArtbw.Menge = 0
- tArtbw.Liter = 0
- tArtbw.Knr = -1.
- END.
- ASSIGN tArtbw.Menge = tArtbw.Menge + Artbw.Menge
- tArtbw.Liter = tArtbw.Liter + Artbw.Liter.
- END.
- ELSE DO:
- CREATE tArtbw.
- BUFFER-COPY Artbw TO tArtbw.
- END.
- END.
- IF Anz = 0 THEN DELETE tArtst.
- END.
- OUTPUT TO VALUE(cDaten).
- PUT CONTROL '£' CHR(10)
- '£' CHR(10)
- '£Datum££Faknr£Kunde££££Ausgang£Saldo£Liter' CHR(10)
- '£' CHR(10).
-
- gMenge = 0.
- gLiter = 0.
- FOR EACH tArtst,
- EACH tArtbw OF tArtst
- BREAK BY tArtst.WHK_Code
- BY tArtst.Artnr
- BY tArtst.Inhalt
- BY tArtst.Jahr
- BY tArtbw.Datum
- BY tArtbw.Trnr :
- IF FIRST-OF ( tArtst.WHK_Code ) THEN DO:
- cNeu = tArtst.WHK_Code.
- IF NOT FIRST (tArtst.WHK_Code) THEN DO:
- RUN LETZTER.
- RUN TOTALE03.
- END.
- RUN SCHLUESSEL.
- IF FKey1 AND cKey1 <> '' THEN PUT CONTROL cKey1 CHR(10).
- IF FKey2 AND cKey2 <> '' THEN PUT CONTROL cKey2 CHR(10).
- IF FKey3 AND cKey3 <> '' THEN PUT CONTROL cKey3 CHR(10).
- IF FKey4 AND cKey4 <> '' THEN PUT CONTROL cKey4 CHR(10).
- PUT CONTROL '£' CHR(10).
- Anz = 0.
- END.
- IF FIRST-OF ( tArtst.Jahr ) THEN DO:
- FIND ArtBez USE-INDEX ArtBez-k1
- WHERE ArtBez.Firma = Firma
- AND ArtBez.Artnr = tArtst.Artnr
- AND ArtBez.Inhalt = tArtst.Inhalt
- AND ArtBez.Jahr = tArtst.Jahr
- AND ArtBez.Sprcd = Sprcd NO-LOCK NO-ERROR.
- IF NOT AVAILABLE ArtBez THEN DO:
- FIND FIRST ArtBez USE-INDEX ArtBez-k1
- WHERE ArtBez.Firma = Firma
- AND ArtBez.Artnr = tArtst.Artnr
- AND ArtBez.Inhalt = tArtst.Inhalt
- AND ArtBez.Jahr = tArtst.Jahr
- NO-LOCK NO-ERROR.
- END.
- IF AVAILABLE ArtBez THEN ASSIGN Bez1 = ArtBez.Bez1
- Bez2 = ArtBez.Bez2.
- ELSE ASSIGN Bez1 = '??????????'
- Bez2 = ''.
- FIND KGebinde USE-INDEX KGebinde-k1
- WHERE KGebinde.Firma = tArtst.Firma
- AND KGebinde.Geb_Cd = tArtst.KGeb_Cd NO-LOCK NO-ERROR.
- IF AVAILABLE KGebinde THEN Gebinde = STRING(KGebinde.Inhalt / 100,'>>9.99 l').
- ELSE Gebinde = tArtst.KGeb_Cd + ' ?????'.
- IF tArtst.Jahr > 10 THEN cJahr = STRING(tArtst.Jahr,'9999').
- ELSE cJahr = ''.
- PUT CONTROL STRING(tArtst.Artnr,'999999') '££'
- Bez1 '£££'
- cJahr '£'
- Gebinde CHR(10).
- IF Bez2 <> '' THEN PUT CONTROL '££' Bez2 CHR(10).
- aMenge = 0.
- aLiter = 0.
- END.
- DO i1 = 1 TO 4:
- i2 = ((i1 - 1) * 2) + 1.
- IF SUBSTRING(tArtst.WHK_Code,i2,02) = '00' THEN LEAVE.
- i2 = i1 * 2.
- cSort = SUBSTRING(tArtst.WHK_Code,01,i2).
- FIND FIRST Totale WHERE Totale.Sort_1 = cSort NO-ERROR.
- IF NOT AVAILABLE Totale THEN DO:
- CREATE Totale.
- ASSIGN Totale.Sort_1 = cSort.
- END.
- Totale.Menge = Totale.Menge + tArtbw.Menge.
- Totale.Liter = Totale.Liter + tArtbw.Liter.
- END.
- aMenge = aMenge + tArtbw.Menge.
- aLiter = aLiter + tArtbw.Liter.
- IF tArtbw.Knr = -1 THEN DO:
- cAdr = 'Verkäufe Monat ' + STRING(MONTH(tArtbw.Datum),'99.')
- + STRING(YEAR (tArtbw.Datum),'9999').
- END.
- ELSE DO:
- IF tArtbw.Knr <> 0 THEN DO:
- FIND Adresse USE-INDEX Adresse-k1
- WHERE Adresse.Firma = AdFirma
- AND Adresse.Knr = tArtbw.Knr NO-LOCK NO-ERROR.
- IF AVAILABLE Adresse THEN cAdr = Adresse.Anzeig_Br.
- ELSE cAdr = '???????????????'.
- END.
- ELSE DO:
- RUN FIND_LAGTRANSART ( INPUT tArtbw.Tr_ARt, OUTPUT cAdr ).
- IF cAdr = '' THEN cAdr = '??????????'.
- ELSE cAdr = ENTRY(2, cAdr, CHR(01)).
- END.
- END.
- PUT CONTROL '£'
- STRING(tArtbw.Datum ,'99.99.9999') '££'
- STRING(tArtbw.Faknr ,'>>>>>>') '£'
- cAdr '££££'
- STRING(tArtbw.Menge ,'->>>>,>>9.99') '£'
- STRING(aMenge ,'->>>>,>>9.99') '£'
- STRING(aLiter ,'->>>>,>>9.99') CHR(10).
- Anz = Anz + 1.
- dMenge = aMenge.
- dLiter = aLiter.
- gMenge = gMenge + tArtbw.Menge.
- gLiter = gLiter + tArtbw.Liter.
- IF LAST-OF ( tArtst.Jahr ) AND
- NOT LAST-OF ( tArtst.WHK_Code ) THEN PUT CONTROL '£' CHR(10).
- IF LAST ( tArtst.WHK_Code ) THEN DO:
- LKey1 = TRUE.
- LKey2 = TRUE.
- LKey3 = TRUE.
- LKey4 = TRUE.
- IF SUBSTRING(cAlt,01,02) = '00' THEN LKey1 = FALSE.
- IF SUBSTRING(cAlt,03,02) = '00' THEN LKey2 = FALSE.
- IF SUBSTRING(cAlt,05,02) = '00' THEN LKey3 = FALSE.
- IF SUBSTRING(cAlt,07,02) = '00' THEN LKey4 = FALSE.
- RUN TOTALE03.
- END.
- END.
- IF gMenge <> 0 OR
- gLiter <> 0 THEN DO:
- PUT CONTROL '£' CHR(10)
- 'Gesamtverkäufe' '£££££££££'
- STRING(gMenge,'->>>>,>>9.99') '£'
- STRING(gLiter,'->>>>,>>9.99') CHR(10).
- END.
- OUTPUT CLOSE.
- excelAppl = DYNAMIC-FUNCTION('CREATEEXCEL':U) NO-ERROR.
- IF NOT VALID-HANDLE(excelAppl) THEN DO:
- RUN FEHLER ( INPUT 1035 ).
- RETURN.
- END.
- RUN OPENEXCEL ( INPUT excelAppl, INPUT cDokument, INPUT '', OUTPUT io ).
- IF NOT io THEN DO:
- RUN FEHLER ( INPUT 1040 ).
- DYNAMIC-FUNCTION('RELEASEEXCEL':U, INPUT excelAppl ) NO-ERROR.
- RETURN NO-APPLY.
- END.
- Zelle = 'A1'.
- excelAppl:Range(Zelle):SELECT.
- excelAppl:Selection:FormulaR1C1 = 'TEXT;' + cDaten.
- excelAppl:Application:RUN ( 'DateiEinfügen' ).
- RUN KOPF ( INPUT excelAppl ).
- Zelle = 'A1'.
- excelAppl:Range(Zelle):SELECT.
- excelAppl:Selection:ColumnWidth = 0.3.
-
- DYNAMIC-FUNCTION('RELEASEEXCEL':U, INPUT excelAppl ) NO-ERROR.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE AUSGABE04 gEWK
- PROCEDURE AUSGABE04 :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DEF VAR io AS LOG NO-UNDO.
- DEF VAR Zelle AS CHAR NO-UNDO.
- DEF VAR cSort AS CHAR NO-UNDO.
- DEF VAR i1 AS INT NO-UNDO.
- DEF VAR i2 AS INT NO-UNDO.
- DEF VAR Anz AS INT NO-UNDO.
- DEF VAR Datum AS DATE NO-UNDO.
- DEF VAR cAdr AS CHAR NO-UNDO.
- DEF VAR aMenge AS DEC DECIMALS 3 NO-UNDO.
- DEF VAR aLiter AS DEC DECIMALS 3 NO-UNDO.
- DEF VAR aEing AS DEC DECIMALS 3 NO-UNDO.
- DEF VAR aAusg AS DEC DECIMALS 3 NO-UNDO.
- DEF VAR aDiff AS DEC DECIMALS 3 NO-UNDO.
- DEF VAR aInhalt AS DEC DECIMALS 3 NO-UNDO.
- DEF VAR gMenge AS DEC DECIMALS 3 NO-UNDO.
- DEF VAR gLiter AS DEC DECIMALS 3 NO-UNDO.
- DEF VAR gEing AS DEC DECIMALS 3 NO-UNDO.
- DEF VAR gAusg AS DEC DECIMALS 3 NO-UNDO.
- DEF VAR FEing AS LOG NO-UNDO.
- DEF VAR Artnr AS INT NO-UNDO.
- DEF VAR Inhalt AS INT NO-UNDO.
- DEF VAR Jahr AS INT NO-UNDO.
- DEF VAR Doknr AS CHAR NO-UNDO.
- DEF VAR cString AS CHAR NO-UNDO.
- DEF VAR Faktor AS INT NO-UNDO.
- cVorlage = 'EWKBuchhaltung.xls'.
- cDokument = 'EWKBuchhaltung.xls'.
- cDaten = 'EWKBuchhaltung.txt'.
- cAlt = ''.
- cNeu = ''.
- FKey1 = FALSE.
- FKey2 = FALSE.
- FKey3 = FALSE.
- FKey4 = FALSE.
- Sprcd = DYNAMIC-FUNCTION('GETFWSPRCD':U) NO-ERROR.
- InvDatum = F_VonDatum.
- cDateiName = cDokument + CHR(01) + cVorlage.
- RUN CREATEDATEI ( INPUT cDateiName ).
- IF RETURN-VALUE BEGINS 'ERROR' THEN RETURN NO-APPLY.
- cDokument = RETURN-VALUE.
- cDateiName = cDaten.
- RUN CREATEDATEI ( INPUT cDateiName ).
- IF RETURN-VALUE BEGINS 'ERROR' THEN RETURN NO-APPLY.
- cDaten = RETURN-VALUE.
- EMPTY TEMP-TABLE tArtst.
- EMPTY TEMP-TABLE tArtbw.
- EMPTY TEMP-TABLE Totale.
- FOR EACH bArtst NO-LOCK USE-INDEX Artst-k1
- WHERE bArtst.Firma = Firma
- AND bArtst.Artnr >= F_VonArtnr
- AND bArtst.Artnr <= F_BisArtnr
- AND bArtst.Inhalt >= F_VonInhalt
- AND bArtst.Inhalt <= F_BisInhalt
- AND bArtst.Jahr >= F_VonJahr
- AND bArtst.Jahr <= F_BisJahr
- AND bArtst.WHK_Code <> ''
- AND bArtst.Lager = TRUE:
- DO WHILE TRUE:
- io = TRUE.
- IF bArtst.Aktiv THEN LEAVE.
- IF bArtst.MDat >= F_VonDatum THEN LEAVE.
- io = FALSE.
- LEAVE.
- END.
- IF NOT io THEN NEXT.
- IF F_Herst <> '' THEN DO:
- IF LOOKUP(STRING(bArtst.Herst ,'999'), F_Herst, ',') = 0 THEN NEXT.
- END.
- IF F_Wgrp <> '' THEN DO:
- IF LOOKUP(STRING(bArtst.Wg_Grp,'999'), F_Wgrp , ',') = 0 THEN NEXT.
- END.
- CREATE tArtst.
- BUFFER-COPY bArtst TO tArtst.
- InvDatum = F_VonDatum - 1.
- RUN INVENTARBESTAND.
- tArtst.InvMenge = Bestand.
- InvDatum = F_BisDatum.
- RUN INVENTARBESTAND.
- tArtst.InvMengeNeu = Bestand.
- END.
- FOR EACH tArtst:
- Anz = 0.
- FOR EACH Artbw NO-LOCK USE-INDEX Artbw-k2
- WHERE Artbw.Firma = tArtst.Firma
- AND Artbw.Artnr = tArtst.Artnr
- AND Artbw.Inhalt = tArtst.Inhalt
- AND Artbw.Jahr = tArtst.Jahr
- AND Artbw.Datum >= F_VonDatum
- AND Artbw.Datum <= F_BisDatum
- AND Artbw.Lag_Buch = TRUE
- AND Artbw.Tr_Art < 21 :
- Anz = Anz + 1.
- IF T_Detail THEN DO:
- IF Artbw.Tr_Art >= 9 THEN DO:
- CREATE tArtbw.
- BUFFER-COPY Artbw TO tArtbw.
- END.
- ELSE DO:
- Datum = DATE(MONTH(Artbw.Datum),01,YEAR(Artbw.Datum)).
- IF Datum < F_VonDatum THEN Datum = F_VonDatum.
- FIND FIRST tArtbw USE-INDEX Artbw-k2
- WHERE tArtbw.Firma = Artbw.Firma
- AND tArtbw.Artnr = Artbw.Artnr
- AND tArtbw.Inhalt = Artbw.Inhalt
- AND tArtbw.Jahr = Artbw.Jahr
- AND tArtbw.Datum = Datum
- AND tArtbw.Tr_Art = Artbw.Tr_Art NO-ERROR.
- IF NOT AVAILABLE tArtbw THEN DO:
- CREATE tArtbw.
- BUFFER-COPY Artbw TO tArtbw
- ASSIGN tArtbw.Datum = Datum
- tArtbw.Faknr = 0
- tArtbw.Menge = 0
- tArtbw.Liter = 0
- tArtbw.Knr = -1.
- END.
- ASSIGN tArtbw.Menge = tArtbw.Menge + Artbw.Menge
- tArtbw.Liter = tArtbw.Liter + Artbw.Liter.
- END.
- END.
- ELSE DO:
- CREATE tArtbw.
- BUFFER-COPY Artbw TO tArtbw.
- END.
- END.
- IF Anz = 0 AND
- tArtst.InvMengeNeu = 0 AND
- (tArtst.InvMenge = ? OR
- tArtst.InvMenge = 0) THEN DELETE tArtst.
- END.
- OUTPUT TO VALUE(cDaten).
- PUT CONTROL '£' CHR(10)
- '£' CHR(10)
- '£Datum££Faknr£Kunde£££Eingang£Ausgang£Saldo£Liter' CHR(10)
- '£' CHR(10).
-
- gEing = 0.
- gAusg = 0.
- gMenge = 0.
- gLiter = 0.
- FOR EACH tArtst,
- EACH tArtbw OF tArtst
- BREAK BY tArtst.WHK_Code
- BY tArtst.Artnr
- BY tArtst.Inhalt
- BY tArtst.Jahr
- BY tArtbw.Datum
- BY tArtbw.Trnr :
- IF FIRST-OF ( tArtst.WHK_Code ) THEN DO:
- cNeu = tArtst.WHK_Code.
- IF NOT FIRST (tArtst.WHK_Code) THEN DO:
- RUN LETZTER.
- RUN TOTALE04.
- END.
- RUN SCHLUESSEL.
- IF FKey1 AND cKey1 <> '' THEN PUT CONTROL cKey1 CHR(10).
- IF FKey2 AND cKey2 <> '' THEN PUT CONTROL cKey2 CHR(10).
- IF FKey3 AND cKey3 <> '' THEN PUT CONTROL cKey3 CHR(10).
- IF FKey4 AND cKey4 <> '' THEN PUT CONTROL cKey4 CHR(10).
- PUT CONTROL '£' CHR(10).
- Anz = 0.
- END.
- IF FIRST-OF ( tArtst.Jahr ) THEN DO:
- FIND ArtBez USE-INDEX ArtBez-k1
- WHERE ArtBez.Firma = Firma
- AND ArtBez.Artnr = tArtst.Artnr
- AND ArtBez.Inhalt = tArtst.Inhalt
- AND ArtBez.Jahr = tArtst.Jahr
- AND ArtBez.Sprcd = Sprcd NO-LOCK NO-ERROR.
- IF NOT AVAILABLE ArtBez THEN DO:
- FIND FIRST ArtBez USE-INDEX ArtBez-k1
- WHERE ArtBez.Firma = Firma
- AND ArtBez.Artnr = tArtst.Artnr
- AND ArtBez.Inhalt = tArtst.Inhalt
- AND ArtBez.Jahr = tArtst.Jahr
- NO-LOCK NO-ERROR.
- END.
- IF AVAILABLE ArtBez THEN ASSIGN Bez1 = ArtBez.Bez1
- Bez2 = ArtBez.Bez2.
- ELSE ASSIGN Bez1 = '??????????'
- Bez2 = ''.
- FIND KGebinde USE-INDEX KGebinde-k1
- WHERE KGebinde.Firma = tArtst.Firma
- AND KGebinde.Geb_Cd = tArtst.KGeb_Cd NO-LOCK NO-ERROR.
- IF AVAILABLE KGebinde THEN Gebinde = STRING(KGebinde.Inhalt / 100,'>>9.99 l').
- ELSE Gebinde = tArtst.KGeb_Cd + ' ?????'.
- IF AVAILABLE KGebinde THEN aInhalt = KGebinde.Inhalt.
- ELSE aInhalt = tArtst.Inhalt.
- IF tArtst.Jahr > 10 THEN cJahr = STRING(tArtst.Jahr,'9999').
- ELSE cJahr = ''.
- PUT CONTROL STRING(tArtst.Artnr,'999999') '££'
- Bez1 '£££'
- cJahr '£'
- Gebinde CHR(10).
- IF Bez2 <> '' THEN PUT CONTROL '££' Bez2 CHR(10).
- aMenge = 0.
- aLiter = 0.
- aAusg = 0.
- aEing = 0.
- IF tArtst.InvMenge <> ? THEN DO:
- tArtst.InvLiter = tArtst.InvMenge * KGebinde.Inhalt / 100.
- aMenge = tArtst.InvMenge.
- aLiter = tArtst.InvLiter.
- PUT CONTROL '£'
- STRING(F_VonDatum - 1,'99.99.9999') '£££'
- 'Inventarbestand' '£££'
- STRING(tArtst.InvMenge,'->>>>,>>9.99') '££'
- STRING(aMenge ,'->>>>,>>9.99') '£'
- STRING(aLiter ,'->>>>,>>9.99') CHR(10).
- END.
- END.
- FEing = FALSE.
- cAdr = ''.
- Bez1 = ''.
- Bez2 = ''.
- Doknr = ''.
- DO WHILE TRUE:
- IF tArtbw.Tr_Art < 9 THEN LEAVE.
- IF tArtbw.Tr_Art > 10 THEN DO:
- FEing = TRUE.
- LEAVE.
- END.
- Artnr = INTEGER(ENTRY(2, tArtbw.Bez2, ';')) NO-ERROR.
- Inhalt = INTEGER(ENTRY(3, tArtbw.Bez2, ';')) NO-ERROR.
- Jahr = INTEGER(ENTRY(4, tArtbw.Bez2, ';')) NO-ERROR.
- Doknr = ENTRY(5, tArtbw.Bez2, ';') NO-ERROR.
- Bez2 = ENTRY(6, tArtbw.Bez2, ';') NO-ERROR.
- FIND Artst USE-INDEX Artst-k1
- WHERE Artst.Firma = Firma
- AND Artst.Artnr = Artnr
- AND Artst.Inhalt = Inhalt
- AND Artst.Jahr = Jahr NO-LOCK NO-ERROR.
- Bez1 = STRING(Artnr ,'999999/')
- + STRING(Inhalt,'9999/')
- + STRING(Jahr ,'9999 ')
- + Artst.Bez.
- RUN FIND_LAGTRANSART ( INPUT tArtbw.Tr_Art, OUTPUT cString ).
- cAdr = ENTRY(2, cString, CHR(01) ).
- IF tArtbw.Bez2 BEGINS 'A;' THEN DO:
- FEing = TRUE.
- tArtbw.Menge = tArtbw.Menge * -1.
- tArtbw.Liter = tArtbw.Liter * -1.
- END.
- IF Bez2 = ? THEN Bez2 = ''.
- IF Doknr = ? THEN Doknr = ''.
- LEAVE.
- END.
- DO WHILE TRUE:
- IF tArtbw.Tr_Art = 9 THEN LEAVE.
- IF tArtbw.Knr = -1 THEN DO:
- IF tArtbw.Tr_Art < 9 THEN DO:
- cAdr = 'Verkäufe Monat ' + STRING(MONTH(tArtbw.Datum),'99.')
- + STRING(YEAR (tArtbw.Datum),'9999').
- LEAVE.
- END.
- IF tArtbw.Tr_Art = 11 THEN DO:
- cAdr = 'Einkäufe Monat ' + STRING(MONTH(tArtbw.Datum),'99.')
- + STRING(YEAR (tArtbw.Datum),'9999').
- LEAVE.
- END.
- IF tArtbw.Tr_Art > 11 THEN DO:
- RUN FIND_LAGTRANSART ( INPUT tArtbw.Tr_Art, OUTPUT cString ).
- cAdr = ENTRY(2, cString, CHR(01) ).
- LEAVE.
- END.
- LEAVE.
- END.
- IF tArtbw.Tr_Art > 11 THEN DO:
- RUN FIND_LAGTRANSART ( INPUT tArtbw.Tr_Art, OUTPUT cString ).
- cAdr = ENTRY(2, cString, CHR(01) ).
- Bez1 = tArtbw.Bez1.
- Bez2 = tArtbw.Bez2.
- LEAVE.
- END.
- IF tArtbw.Tr_Art = 11 AND
- tArtbw.Aufnr > 0 THEN Doknr = STRING(tArtbw.Aufnr,'B999999').
- ELSE DO:
- IF tArtbw.Faknr <> 0 THEN Doknr = STRING(tArtbw.Faknr,'F999999').
- ELSE Doknr = STRING(tArtbw.Aufnr,'A999999').
- END.
- FIND Adresse USE-INDEX Adresse-k1
- WHERE Adresse.Firma = AdFirma
- AND Adresse.Knr = tArtbw.Knr NO-LOCK NO-ERROR.
- IF AVAILABLE Adresse THEN cAdr = Adresse.Anzeig_Br.
- ELSE cAdr = '???????????????'.
- IF tArtbw.Knr = 0 THEN cAdr = 'man. Lagereingang'.
- LEAVE.
- END.
- IF FEing THEN Faktor = 1.
- ELSE Faktor = -1.
- DO i1 = 1 TO 4:
- i2 = ((i1 - 1) * 2) + 1.
- IF SUBSTRING(tArtst.WHK_Code,i2,02) = '00' THEN LEAVE.
- i2 = i1 * 2.
- cSort = SUBSTRING(tArtst.WHK_Code,01,i2).
- FIND FIRST Totale WHERE Totale.Sort_1 = cSort NO-ERROR.
- IF NOT AVAILABLE Totale THEN DO:
- CREATE Totale.
- ASSIGN Totale.Sort_1 = cSort.
- END.
- Totale.Menge = Totale.Menge + (tArtbw.Menge * Faktor).
- Totale.Liter = Totale.Liter + (tArtbw.Liter * Faktor).
- IF FEing THEN Totale.Eingang = Totale.Eingang + tArtbw.Menge.
- ELSE Totale.Ausgang = Totale.Ausgang + tArtbw.Menge.
- END.
- aMenge = aMenge + (tArtbw.Menge * Faktor).
- aLiter = aLiter + (tArtbw.Liter * Faktor).
- IF FEing THEN aEing = aEing + tArtbw.Menge.
- ELSE aAusg = aAusg + tArtbw.Menge.
- PUT CONTROL '£'
- STRING(tArtbw.Datum ,'99.99.9999') '££'
- Doknr '£'
- cAdr '£££'.
- IF FEing THEN PUT CONTROL STRING(tArtbw.Menge,'->>>>,>>9.99') '££'.
- ELSE PUT CONTROL '£'
- STRING(tArtbw.Menge,'->>>>,>>9.99') '£'.
- PUT CONTROL STRING(aMenge ,'->>>>,>>9.99') '£'
- STRING(aLiter ,'->>>>,>>9.99') CHR(10).
- IF Bez1 <> '' THEN PUT CONTROL '££££' Bez1 CHR(10).
- IF Bez2 <> '' THEN PUT CONTROL '££££' Bez2 CHR(10).
- IF LAST-OF ( tArtst.Jahr ) THEN DO:
- IF aMenge <> tArtst.InvMengeNeu THEN DO:
- aDiff = tArtst.InvMengeNeu - aMenge.
- aEing = aEing + aDiff.
- aMenge = aMenge + aDiff.
- aLiter = aLiter + (aDiff * aInhalt / 100).
- PUT CONTROL '££££Lagerdifferenz£££'
- STRING(aDiff ,'->>>>,>>9.99') '££'
- STRING(aMenge,'->>>>,>>9.99') '£'
- STRING(aLiter,'->>>>,>>9.99') CHR(10).
- END.
- PUT CONTROL '££££Total Artikel£££'
- STRING(aEing ,'->>>>,>>9.99') '£'
- STRING(aAusg ,'->>>>,>>9.99') '£'
- STRING(aMenge,'->>>>,>>9.99') '£'
- STRING(aLiter,'->>>>,>>9.99') CHR(10)
- '£' CHR(10).
- gEing = gEing + aEing.
- gAusg = gAusg + aAusg.
- gMenge = gMenge + aMenge.
- gLiter = gLiter + aLiter.
- END.
- IF LAST ( tArtst.WHK_Code ) THEN DO:
- LKey1 = TRUE.
- LKey2 = TRUE.
- LKey3 = TRUE.
- LKey4 = TRUE.
- IF SUBSTRING(cAlt,01,02) = '00' THEN LKey1 = FALSE.
- IF SUBSTRING(cAlt,03,02) = '00' THEN LKey2 = FALSE.
- IF SUBSTRING(cAlt,05,02) = '00' THEN LKey3 = FALSE.
- IF SUBSTRING(cAlt,07,02) = '00' THEN LKey4 = FALSE.
- RUN TOTALE04.
- PUT CONTROL '££Gesamttotal £££££'
- STRING(gEing ,'->>>>,>>9.99') '£'
- STRING(gAusg ,'->>>>,>>9.99') '£'
- STRING(gMenge,'->>>>,>>9.99') '£'
- STRING(gLiter,'->>>>,>>9.99') CHR(10).
- END.
- END.
- OUTPUT CLOSE.
- excelAppl = DYNAMIC-FUNCTION('CREATEEXCEL':U) NO-ERROR.
- IF NOT VALID-HANDLE(excelAppl) THEN DO:
- RUN FEHLER ( INPUT 1035 ).
- RETURN.
- END.
- RUN OPENEXCEL ( INPUT excelAppl, INPUT cDokument, INPUT '', OUTPUT io ).
- IF NOT io THEN DO:
- RUN FEHLER ( INPUT 1040 ).
- DYNAMIC-FUNCTION('RELEASEEXCEL':U, INPUT excelAppl ) NO-ERROR.
- RETURN NO-APPLY.
- END.
- Zelle = 'A1'.
- excelAppl:Range(Zelle):SELECT.
- excelAppl:Selection:FormulaR1C1 = 'TEXT;' + cDaten.
- excelAppl:Application:RUN ( 'DateiEinfügen' ).
- RUN KOPF ( INPUT excelAppl ).
- Zelle = 'A1'.
- excelAppl:Range(Zelle):SELECT.
- excelAppl:Selection:ColumnWidth = 0.3.
-
- DYNAMIC-FUNCTION('RELEASEEXCEL':U, INPUT excelAppl ) NO-ERROR.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE BEREINIGEN gEWK
- PROCEDURE BEREINIGEN :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DEF VAR i AS INT NO-UNDO.
- DEF VAR cString AS CHAR NO-UNDO.
- DEF VAR cDelim AS CHAR NO-UNDO.
- DO WITH FRAME {&FRAME-NAME}:
- ASSIGN {&list-6}.
- cString = ''.
- cDelim = ''.
- DO i = 1 TO NUM-ENTRIES(F_Herst, ','):
- cString = cString + cDelim + STRING(INTEGER(ENTRY(i, F_Herst, ',')),'999').
- cDelim = ','.
- END.
- F_Herst = cString.
- cString = ''.
- cDelim = ''.
- DO i = 1 TO NUM-ENTRIES(F_Wgrp, ','):
- cString = cString + cDelim + STRING(INTEGER(ENTRY(i, F_Wgrp , ',')),'999').
- cDelim = ','.
- END.
- F_Wgrp = cString.
- END.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE changePage gEWK
- PROCEDURE changePage :
- /*------------------------------------------------------------------------------
- Purpose: Super Override
- Parameters:
- Notes:
- ------------------------------------------------------------------------------*/
- /* Code placed here will execute PRIOR to standard behavior. */
- RUN SUPER.
- AktSeite = DYNAMIC-FUNCTION('getCurrentPage':U).
- CASE AktSeite:
- WHEN 1 THEN DO:
- /* RUN addLink ( h_dyntoolbar , 'TableIO':U , h_v-auftr ). */
- /* RUN addLink ( h_dyntoolbar , 'Navigation':U , h_d-auftr ). */
- /* RUN ToolbarInit ( INPUT h_d-auftr ). */
- RUN ENTRY_CURSOR.
- END.
- WHEN 2 THEN DO:
- RUN ENTRY_CURSOR.
- END.
- END CASE.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI gEWK _DEFAULT-DISABLE
- PROCEDURE disable_UI :
- /*------------------------------------------------------------------------------
- Purpose: DISABLE the User Interface
- Parameters: <none>
- Notes: Here we clean-up the user-interface by deleting
- dynamic widgets we have created and/or hide
- frames. This procedure is usually called when
- we are ready to "clean-up" after running.
- ------------------------------------------------------------------------------*/
- /* Hide all frames. */
- HIDE FRAME gEWK.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enableObject gEWK
- PROCEDURE enableObject :
- /*------------------------------------------------------------------------------
- Purpose: Super Override
- Parameters:
- Notes:
- ------------------------------------------------------------------------------*/
- /* Code placed here will execute PRIOR to standard behavior. */
- RUN SUPER.
- RUN FENSTER_TITEL ( INPUT FRAME {&FRAME-NAME}:HANDLE ) NO-ERROR.
- GET-KEY-VALUE SECTION 'Auswertungen' KEY 'EWKArt' VALUE cRetVal.
- IF cRetVal = ? THEN VLiArt = 1.
- ELSE VLiArt = INTEGER(cRetVal) NO-ERROR.
- DO WITH FRAME {&FRAME-NAME}:
- CB_LiArt:SCREEN-VALUE = STRING(VLiArt,'99') NO-ERROR.
- RUN WERTE_EINLESEN.
- APPLY 'VALUE-CHANGED' TO CB_LiArt.
- END.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enable_UI gEWK _DEFAULT-ENABLE
- PROCEDURE enable_UI :
- /*------------------------------------------------------------------------------
- Purpose: ENABLE the User Interface
- Parameters: <none>
- Notes: Here we display/view/enable the widgets in the
- user-interface. In addition, OPEN all queries
- associated with each FRAME and BROWSE.
- These statements here are based on the "Other
- Settings" section of the widget Property Sheets.
- ------------------------------------------------------------------------------*/
- DISPLAY CB_LiArt F_VonArtnr F_VonInhalt F_VonJahr F_BisArtnr F_BisInhalt
- F_BisJahr F_Herst F_Wgrp F_VonDatum F_BisDatum T_Abschluss T_Detail
- WITH FRAME gEWK.
- ENABLE RECT-5 RECT-6 RECT-7 CB_LiArt F_VonArtnr F_VonInhalt F_VonJahr
- F_BisArtnr F_BisInhalt F_BisJahr F_Herst F_Wgrp F_VonDatum F_BisDatum
- T_Abschluss T_Detail Btn_Excel Btn_Cancel
- WITH FRAME gEWK.
- VIEW FRAME gEWK.
- {&OPEN-BROWSERS-IN-QUERY-gEWK}
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENDE gEWK
- PROCEDURE ENDE :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- AktSeite = DYNAMIC-FUNCTION('getCurrentPage':U) NO-ERROR.
- IF AktSeite > 1 THEN DO:
- RUN selectPage ( INPUT 1 ).
- RETURN NO-APPLY.
- END.
- IF NOT FAbbruch THEN DO WITH FRAME {&FRAME-NAME}:
- ASSIGN {&list-6}.
- PUT-KEY-VALUE SECTION 'Auswertungen' KEY 'EWKArt' VALUE STRING(VLiArt).
- cKey = 'EWKArt' + STRING(VLiArt,'99').
- cRetVal = STRING(F_VonArtnr) + '@'
- + STRING(F_VonInhalt) + '@'
- + STRING(F_VonJahr ) + '@'
- + STRING(F_BisArtnr ) + '@'
- + STRING(F_BisInhalt) + '@'
- + STRING(F_BisJahr ) + '@'
- + STRING(F_Herst ) + '@'
- + STRING(F_Wgrp ) + '@'.
- IF F_VonDatum <> ? THEN cRetVal = cRetVal + STRING(F_VonDatum).
- cRetVal = cRetVal + '@'.
- IF F_BisDatum <> ? THEN cRetVal = cRetVal + STRING(F_BisDatum).
- cRetVal = cRetVal + '@'.
- cRetVal = cRetVal
- + STRING(T_Abschluss) + '@'
- + STRING(T_Detail ) + '@'.
- PUT-KEY-VALUE SECTION 'Auswertungen' KEY cKey VALUE cRetVal.
- END.
- RUN ENDE_PROGRAMM ( INPUT THIS-PROCEDURE:FILE-NAME ).
- APPLY 'GO' TO FRAME {&FRAME-NAME}.
- RETURN NO-APPLY.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENTRY_CURSOR gEWK
- PROCEDURE ENTRY_CURSOR :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- AktSeite = DYNAMIC-FUNCTION('getCurrentPage':U).
- CASE AktSeite:
- /* WHEN 1 THEN RUN applyEntry IN h_v-adresse ( INPUT ? ). */
- /* WHEN 2 THEN RUN applyEntry IN h_f-adrkomm ( INPUT ? ). */
- /* WHEN 3 THEN RUN applyEntry IN h_b-auftbb ( INPUT ? ). */
- /* WHEN 4 THEN RUN applyEntry IN h_b-aufdet ( INPUT ? ). */
- /* WHEN 5 THEN RUN applyEntry IN h_b-aufstreu ( INPUT ? ). */
- /* WHEN 6 THEN RUN applyEntry IN h_b-auffak ( INPUT ? ). */
- /* WHEN 7 THEN RUN applyEntry IN h_b-position ( INPUT ? ). */
- END CASE.
- RETURN NO-APPLY.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE exitObject gEWK
- PROCEDURE exitObject :
- /*------------------------------------------------------------------------------
- Purpose: Super Override
- Parameters:
- Notes:
- ------------------------------------------------------------------------------*/
- RUN ENDE.
- RETURN NO-APPLY.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE FELDER_AKTIVIEREN gEWK
- PROCEDURE FELDER_AKTIVIEREN :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DEF INPUT PARAMETER Fenster AS HANDLE NO-UNDO.
- ASSIGN Fenster = Fenster:FIRST-CHILD.
- DO WHILE VALID-HANDLE (Fenster) :
- DO WHILE TRUE:
- IF Fenster:TYPE = 'LITERAL' THEN LEAVE.
- Fenster:HIDDEN = FALSE NO-ERROR.
- IF ERROR-STATUS:ERROR THEN DO:
- MESSAGE 'Falscher Typ . ' Fenster:TYPE.
- LEAVE.
- END.
- Fenster:SENSITIVE = TRUE NO-ERROR.
- IF ERROR-STATUS:ERROR THEN DO:
- MESSAGE 'Falscher Typ . ' Fenster:TYPE.
- LEAVE.
- END.
- LEAVE.
- END.
- ASSIGN Fenster = Fenster:NEXT-SIBLING.
- END.
-
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE INVENTARBESTAND gEWK
- PROCEDURE INVENTARBESTAND :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DEF VAR Verkehr AS DEC NO-UNDO.
- DEF VAR InvBest AS DEC NO-UNDO.
- DEF VAR InvDat AS DATE NO-UNDO.
- DEF VAR cCodeC AS CHAR NO-UNDO.
- DEF VAR iCodeI AS INT NO-UNDO.
- DEF VAR DiffTg AS INT NO-UNDO.
- DEF VAR GDat AS DATE NO-UNDO.
- DEF VAR KDat AS DATE NO-UNDO.
-
- cCodeC = STRING(BArtst.Artnr ,'999999')
- + STRING(BArtst.Inhalt,'9999')
- + STRING(BArtst.Jahr ,'9999').
- iCodeI = INTEGER(InvDatum).
- Bestand = ?.
- FIND Tabel USE-INDEX Tabel-k1
- WHERE Tabel.Firma = BArtst.Firma
- AND Tabel.RecArt = 'EWKINV'
- AND Tabel.CodeC = cCodeC
- AND Tabel.CodeI = iCodeI
- AND Tabel.Sprcd = 1 NO-LOCK NO-ERROR.
- IF AVAILABLE Tabel THEN DO:
- Bestand = DECIMAL(Tabel.Bez1).
- RETURN.
- END.
- DO WHILE TRUE:
- InvDat = ?.
- GDat = ?.
- KDat = ?.
- FIND FIRST Artbw USE-INDEX Artbw-k7
- WHERE Artbw.Firma = BArtst.Firma
- AND Artbw.Artnr = BArtst.Artnr
- AND Artbw.Inhalt = BArtst.Inhalt
- AND Artbw.Jahr = BArtst.Jahr
- AND Artbw.Tr_Art = 21
- AND Artbw.Datum = InvDatum NO-LOCK NO-ERROR.
- IF AVAILABLE Artbw THEN DO:
- InvDat = Artbw.Datum.
- LEAVE.
- END.
- FIND FIRST Artbw USE-INDEX Artbw-k7
- WHERE Artbw.Firma = BArtst.Firma
- AND Artbw.Artnr = BArtst.Artnr
- AND Artbw.Inhalt = BArtst.Inhalt
- AND Artbw.Jahr = BArtst.Jahr
- AND Artbw.Tr_Art = 21
- AND Artbw.Datum < InvDatum NO-LOCK NO-ERROR.
- IF AVAILABLE Artbw THEN KDat = Artbw.Datum.
- ELSE DO:
- FIND LAST Artbw USE-INDEX Artbw-k2
- WHERE Artbw.Firma = BArtst.Firma
- AND Artbw.Artnr = BArtst.Artnr
- AND Artbw.Inhalt = BArtst.Inhalt
- AND Artbw.Jahr = BArtst.Jahr
- AND Artbw.Lag_Buch = TRUE
- AND Artbw.Datum <= InvDatum
- AND Artbw.Tr_Art < 21 NO-LOCK NO-ERROR.
- IF NOT AVAILABLE Artbw THEN RETURN.
- KDat = 01/01/0001.
- END.
- FIND LAST Artbw USE-INDEX Artbw-k7
- WHERE Artbw.Firma = BArtst.Firma
- AND Artbw.Artnr = BArtst.Artnr
- AND Artbw.Inhalt = BArtst.Inhalt
- AND Artbw.Jahr = BArtst.Jahr
- AND Artbw.Tr_Art = 21
- AND Artbw.Datum > InvDatum NO-LOCK NO-ERROR.
- IF AVAILABLE Artbw THEN GDat = Artbw.Datum.
- IF KDat = ? AND
- GDat <> ? THEN DO:
- InvDat = GDat.
- KDat = InvDatum.
- LEAVE.
- END.
- IF KDat <> ? AND
- GDat = ? THEN DO:
- InvDat = KDat.
- GDat = InvDatum.
- LEAVE.
- END.
- DiffTg = InvDatum - KDat.
- IF (GDat - InvDatum) < DiffTg THEN DO:
- InvDat = GDat.
- KDat = InvDatum.
- LEAVE.
- END.
- InvDat = KDat.
- GDat = InvDatum.
- LEAVE.
- END.
- InvBest = 0.
- Verkehr = 0.
- FOR EACH Artbw USE-INDEX Artbw-k7
- WHERE Artbw.Firma = BArtst.Firma
- AND Artbw.Artnr = BArtst.Artnr
- AND Artbw.Inhalt = BArtst.Inhalt
- AND Artbw.Jahr = BArtst.Jahr
- AND Artbw.Tr_Art = 21
- AND Artbw.Datum = InvDat NO-LOCK :
- InvBest = InvBest + Artbw.Menge.
- END.
- IF InvDat < InvDatum THEN DO:
- FOR EACH Artbw USE-INDEX Artbw-k2
- WHERE Artbw.Firma = BArtst.Firma
- AND Artbw.Artnr = BArtst.Artnr
- AND Artbw.Inhalt = BArtst.Inhalt
- AND Artbw.Jahr = BArtst.Jahr
- AND Artbw.Lag_Buch = TRUE
- AND Artbw.Datum > InvDat
- AND Artbw.Datum <= InvDatum NO-LOCK:
- IF Artbw.Tr_Art = 21 THEN NEXT.
- IF Artbw.Tr_Art < 11 THEN DO:
- Verkehr = Verkehr - Artbw.Menge.
- NEXT.
- END.
- IF Artbw.Tr_Art < 21 THEN DO:
- Verkehr = Verkehr + Artbw.Menge.
- NEXT.
- END.
- END.
- END.
- IF InvDat > InvDatum THEN DO:
- FOR EACH Artbw USE-INDEX Artbw-k2
- WHERE Artbw.Firma = BArtst.Firma
- AND Artbw.Artnr = BArtst.Artnr
- AND Artbw.Inhalt = BArtst.Inhalt
- AND Artbw.Jahr = BArtst.Jahr
- AND Artbw.Lag_Buch = TRUE
- AND Artbw.Datum > InvDatum
- AND Artbw.Datum <= InvDat NO-LOCK:
- IF Artbw.Tr_Art = 21 THEN NEXT.
- IF Artbw.Tr_Art < 11 THEN DO:
- Verkehr = Verkehr - Artbw.Menge.
- NEXT.
- END.
- IF Artbw.Tr_Art < 21 THEN DO:
- Verkehr = Verkehr + Artbw.Menge.
- NEXT.
- END.
- END.
- END.
-
- InvBest = InvBest + Verkehr.
- Bestand = InvBest.
- IF VLiArt <> 2 THEN RETURN.
-
- REPEAT TRANSACTION:
- IF T_Abschluss = FALSE THEN LEAVE.
- FIND Tabel USE-INDEX Tabel-k1
- WHERE Tabel.Firma = BArtst.Firma
- AND Tabel.RecArt = 'EWKINV'
- AND Tabel.CodeC = cCodeC
- AND Tabel.CodeI = iCodeI
- AND Tabel.Sprcd = 1 NO-LOCK NO-ERROR.
- IF AVAILABLE Tabel THEN LEAVE.
- CREATE Tabel.
- ASSIGN Tabel.Firma = BArtst.Firma
- Tabel.RecArt = 'EWKINV'
- Tabel.CodeC = cCodeC
- Tabel.CodeI = iCodeI
- Tabel.Sprcd = 1
- Tabel.Bez1 = STRING(InvBest,'999999999.999-').
- RELEASE Tabel.
- LEAVE.
- END.
-
- RETURN.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE KOPF gEWK
- PROCEDURE KOPF :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DEF INPUT PARAMETER eh AS COM-HANDLE NO-UNDO.
- DEF VAR Zelle AS CHAR NO-UNDO.
- FIND Steuer USE-INDEX Steuer-k1
- WHERE Steuer.Firma = Firma NO-LOCK NO-ERROR.
- CASE VLiArt:
- WHEN 1 THEN DO:
- Zelle = 'B1'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = Steuer.Firma1.
- Zelle = 'D1'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = 'Artikel mit WHK-Code'.
- Zelle = 'H1'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = 'Datum : ' + STRING(TODAY,'99.99.9999').
- Zelle = 'B2'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = Steuer.Ort.
- Zelle = 'D2'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = ''.
- Zelle = 'H2'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = 'Zeit : ' + STRING(TIME,'HH:MM:SS').
- END.
- WHEN 2 THEN DO:
- Zelle = 'A1'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = Steuer.Firma1.
- Zelle = 'D1'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = 'Weininventar'.
- Zelle = 'G1'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = 'Datum : ' + STRING(TODAY,'99.99.9999').
- Zelle = 'A2'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = Steuer.Ort.
- Zelle = 'D2'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = 'per ' + STRING(F_VonDatum,'99.99.9999').
- Zelle = 'G2'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = 'Zeit : ' + STRING(TIME,'HH:MM:SS').
- END.
- WHEN 3 THEN DO:
- Zelle = 'A1'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = Steuer.Firma1.
- Zelle = 'F1'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = 'Weinverkäufe'.
- Zelle = 'K1'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = 'Datum : ' + STRING(TODAY,'99.99.9999').
- Zelle = 'A2'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = Steuer.Ort.
- Zelle = 'F2'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = STRING(F_VonDatum,'99.99.9999')
- + ' - '
- + STRING(F_BisDatum,'99.99.9999').
- Zelle = 'K2'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = 'Zeit : ' + STRING(TIME,'HH:MM:SS').
- END.
- WHEN 4 THEN DO:
- Zelle = 'A1'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = Steuer.Firma1.
- Zelle = 'F1'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = 'Kellerbuchhaltung (Eidg. WKK)'.
- Zelle = 'K1'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = 'Datum : ' + STRING(TODAY,'99.99.9999').
- Zelle = 'A2'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = Steuer.Ort.
- Zelle = 'F2'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = STRING(F_VonDatum,'99.99.9999')
- + ' - '
- + STRING(F_BisDatum,'99.99.9999').
- Zelle = 'K2'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = 'Zeit : ' + STRING(TIME,'HH:MM:SS').
- END.
- END CASE.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE LETZTER gEWK
- PROCEDURE LETZTER :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- IF LENGTH(cNeu) < 8 THEN cNeu = cNeu + FILL('0', 8 - LENGTH(cNeu)).
- LKey1 = FALSE.
- LKey2 = FALSE.
- LKey3 = FALSE.
- LKey4 = FALSE.
- DO WHILE TRUE:
- IF SUBSTRING(cNeu,01,02) <> SUBSTRING(cAlt,01,02) THEN DO:
- LKey1 = TRUE.
- LKey2 = TRUE.
- LKey3 = TRUE.
- LKey4 = TRUE.
- LEAVE.
- END.
- IF SUBSTRING(cNeu,03,02) <> SUBSTRING(cAlt,03,02) THEN DO:
- LKey2 = TRUE.
- LKey3 = TRUE.
- LKey4 = TRUE.
- LEAVE.
- END.
- IF SUBSTRING(cNeu,05,02) <> SUBSTRING(cAlt,05,02) THEN DO:
- LKey3 = TRUE.
- LKey4 = TRUE.
- LEAVE.
- END.
- IF SUBSTRING(cNeu,07,02) <> SUBSTRING(cAlt,07,02) THEN DO:
- LKey4 = TRUE.
- LEAVE.
- END.
- LEAVE.
- END.
- IF SUBSTRING(cAlt,01,02) = '00' THEN LKey1 = FALSE.
- IF SUBSTRING(cAlt,03,02) = '00' THEN LKey2 = FALSE.
- IF SUBSTRING(cAlt,05,02) = '00' THEN LKey3 = FALSE.
- IF SUBSTRING(cAlt,07,02) = '00' THEN LKey4 = FALSE.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE NEXTPAGE gEWK
- PROCEDURE NEXTPAGE :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- AktSeite = DYNAMIC-FUNCTION('getCurrentPage':U).
- IF AktSeite = MaxPage THEN AktSeite = 1.
- ELSE AktSeite = AktSeite + 1.
- RUN selectPage ( INPUT AktSeite ).
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE PREVPAGE gEWK
- PROCEDURE PREVPAGE :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- AktSeite = DYNAMIC-FUNCTION('getCurrentPage':U).
- IF AktSeite = 1 THEN AktSeite = MaxPage.
- ELSE AktSeite = AktSeite - 1.
- RUN selectPage ( INPUT AktSeite ).
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE REPORT gEWK
- PROCEDURE REPORT :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DO WITH FRAME {&FRAME-NAME}:
- ASSIGN {&list-6}.
- VLiArt = INTEGER(CB_LiArt:SCREEN-VALUE).
- SESSION:SET-WAIT-STATE('GENERAL').
- IF VLiArt = 01 THEN RUN AUSGABE01.
- IF VLiArt = 02 THEN RUN AUSGABE02.
- IF VLiArt = 03 THEN RUN AUSGABE03.
- IF VLiArt = 04 THEN RUN AUSGABE04.
- SESSION:SET-WAIT-STATE('').
- END.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE SCHLUESSEL gEWK
- PROCEDURE SCHLUESSEL :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
-
- DEF VAR Cd_1 AS INT NO-UNDO.
- DEF VAR Cd_2 AS INT NO-UNDO.
- DEF VAR Cd_3 AS INT NO-UNDO.
- DEF VAR Cd_4 AS INT NO-UNDO.
- IF LENGTH(cNeu) < 8 THEN cNeu = cNeu + FILL('0', 8 - LENGTH(cNeu)).
- FKey1 = FALSE.
- FKey2 = FALSE.
- FKey3 = FALSE.
- FKey4 = FALSE.
- DO WHILE TRUE:
- IF SUBSTRING(cNeu,01,02) <> SUBSTRING(cAlt,01,02) THEN DO:
- FKey1 = TRUE.
- FKey2 = TRUE.
- FKey3 = TRUE.
- FKey4 = TRUE.
- END.
- ELSE
- IF SUBSTRING(cNeu,03,02) <> SUBSTRING(cAlt,03,02) THEN DO:
- FKey2 = TRUE.
- FKey3 = TRUE.
- FKey4 = TRUE.
- END.
- ELSE
- IF SUBSTRING(cNeu,05,02) <> SUBSTRING(cAlt,05,02) THEN DO:
- FKey3 = TRUE.
- FKey4 = TRUE.
- END.
- ELSE
- IF SUBSTRING(cNeu,07,02) <> SUBSTRING(cAlt,07,02) THEN DO:
- FKey4 = TRUE.
- END.
- Cd_1 = INTEGER(SUBSTRING(cNeu,01,02)).
- Cd_2 = INTEGER(SUBSTRING(cNeu,03,02)).
- Cd_3 = INTEGER(SUBSTRING(cNeu,05,02)).
- Cd_4 = INTEGER(SUBSTRING(cNeu,07,02)).
- IF FKey1 THEN DO:
- FIND EWKSt1 USE-INDEX EWKSt1-k1
- WHERE EWKSt1.Firma = Firma
- AND EWKSt1.Cd_1 = Cd_1 NO-LOCK NO-ERROR.
- IF AVAILABLE EWKSt1 THEN cKey1 = EWKSt1.Bez.
- ELSE cKey1 = STRING(Cd_1,'99').
- cTKey1 = 'Total ' + cKey1.
- END.
- IF FKey2 THEN DO:
- IF Cd_2 = 0 THEN DO:
- cKey2 = ''.
- cTKey2 = ''.
- END.
- ELSE DO:
- FIND EWKSt2 USE-INDEX EWKSt2-k1
- WHERE EWKSt2.Firma = Firma
- AND EWKSt2.Cd_1 = Cd_1
- AND EWKSt2.Cd_2 = Cd_2 NO-LOCK NO-ERROR.
- IF AVAILABLE EWKSt2 THEN cKey2 = EWKSt2.Bez.
- ELSE cKey2 = STRING(Cd_1,'99')
- + STRING(Cd_2,'99').
- cTKey2 = 'Total ' + cKey2.
- END.
- END.
- IF FKey3 THEN DO:
- IF Cd_3 = 0 THEN DO:
- cKey3 = ''.
- cTKey3 = ''.
- END.
- ELSE DO:
- FIND EWKSt3 USE-INDEX EWKSt3-k1
- WHERE EWKSt3.Firma = Firma
- AND EWKSt3.Cd_1 = Cd_1
- AND EWKSt3.Cd_2 = Cd_2
- AND EWKSt3.Cd_3 = Cd_3 NO-LOCK NO-ERROR.
- IF AVAILABLE EWKSt3 THEN cKey3 = EWKSt3.Bez.
- ELSE cKey3 = STRING(Cd_1,'99')
- + STRING(Cd_2,'99')
- + STRING(Cd_3,'99').
- cTKey3 = 'Total ' + cKey3.
- END.
- END.
- IF FKey4 THEN DO:
- IF Cd_4 = 0 THEN DO:
- cKey4 = ''.
- cTKey4 = ''.
- END.
- ELSE DO:
- FIND EWKSt4 USE-INDEX EWKSt4-k1
- WHERE EWKSt4.Firma = Firma
- AND EWKSt4.Cd_1 = Cd_1
- AND EWKSt4.Cd_2 = Cd_2
- AND EWKSt4.Cd_3 = Cd_3
- AND EWKSt4.Cd_4 = Cd_4 NO-LOCK NO-ERROR.
- IF AVAILABLE EWKSt4 THEN cKey4 = EWKSt4.Bez.
- ELSE cKey4 = STRING(Cd_1,'99')
- + STRING(Cd_2,'99')
- + STRING(Cd_3,'99')
- + STRING(Cd_4,'99').
- cTKey4 = 'Total ' + cKey4.
- END.
- END.
- LEAVE.
- END.
- cAlt = cNeu.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE selectPage gEWK
- PROCEDURE selectPage :
- /*------------------------------------------------------------------------------
- Purpose: Super Override
- Parameters:
- Notes:
- ------------------------------------------------------------------------------*/
- DEF INPUT PARAMETER piPageNum AS INT NO-UNDO.
- DEF VAR FMutFlag AS LOG NO-UNDO.
- DEF VAR MutProg AS CHAR NO-UNDO.
- FMutFlag = DYNAMIC-FUNCTION('getMutflagAlt':U) NO-ERROR.
- DO WHILE TRUE:
- IF NOT FMutFlag THEN LEAVE.
- MutProg = DYNAMIC-FUNCTION('GETMUTPROG':U).
- IF MutProg <> THIS-PROCEDURE:FILE-NAME THEN LEAVE.
- RETURN NO-APPLY.
- END.
- CASE piPageNum:
- END CASE.
- AktSeite = DYNAMIC-FUNCTION('getCurrentPage':U).
- CASE AktSeite:
- WHEN 1 THEN DO:
- /* RUN removeLink ( h_dyntoolbar , 'TableIO':U , h_v-auftr ). */
- /* RUN removeLink ( h_dyntoolbar , 'Navigation':U , h_d-auftr ). */
- END.
- END CASE.
- RUN SUPER( INPUT piPageNum).
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE TOOLBAR gEWK
- PROCEDURE TOOLBAR :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DEF INPUT PARAMETER pcAction AS CHAR NO-UNDO.
- /*
- RUN TOOLBAR IN h_dyntoolbar ( INPUT pcAction ).
- */
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE TOTALE02 gEWK
- PROCEDURE TOTALE02 :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DEF VAR cSort AS CHAR NO-UNDO.
- IF LKey4 THEN DO:
- cSort = SUBSTRING(cAlt,01,08).
- FIND Totale WHERE Totale.Sort_1 = cSort.
- IF Totale.Menge <> dMenge OR
- Totale.Liter <> dLiter THEN DO:
- PUT CONTROL cTKey4 '£££££'
- STRING(Totale.Menge,'->>>>,>>9.99') '£'
- STRING(Totale.Liter,'->>>>,>>9.99') CHR(10).
- END.
- END.
- IF LKey3 THEN DO:
- cSort = SUBSTRING(cAlt,01,06).
- FIND Totale WHERE Totale.Sort_1 = cSort.
- IF Totale.Menge <> dMenge OR
- Totale.Liter <> dLiter THEN DO:
- PUT CONTROL cTKey3 '£££££'
- STRING(Totale.Menge,'->>>>,>>9.99') '£'
- STRING(Totale.Liter,'->>>>,>>9.99') CHR(10).
- END.
- END.
- IF LKey2 THEN DO:
- cSort = SUBSTRING(cAlt,01,04).
- FIND Totale WHERE Totale.Sort_1 = cSort.
- IF Totale.Menge <> dMenge OR
- Totale.Liter <> dLiter THEN DO:
- PUT CONTROL cTKey2 '£££££'
- STRING(Totale.Menge,'->>>>,>>9.99') '£'
- STRING(Totale.Liter,'->>>>,>>9.99') CHR(10).
- END.
- END.
- IF LKey1 THEN DO:
- cSort = SUBSTRING(cAlt,01,02).
- FIND Totale WHERE Totale.Sort_1 = cSort.
- IF Totale.Menge <> dMenge OR
- Totale.Liter <> dLiter THEN DO:
- PUT CONTROL cTKey1 '£££££'
- STRING(Totale.Menge,'->>>>,>>9.99') '£'
- STRING(Totale.Liter,'->>>>,>>9.99') CHR(10).
- END.
- END.
- PUT CONTROL '£' CHR(10).
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE TOTALE03 gEWK
- PROCEDURE TOTALE03 :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DEF VAR cSort AS CHAR NO-UNDO.
- IF LKey4 THEN DO:
- cSort = SUBSTRING(cAlt,01,08).
- FIND Totale WHERE Totale.Sort_1 = cSort.
- IF Totale.Menge <> dMenge OR
- Totale.Liter <> dLiter THEN DO:
- PUT CONTROL cTKey4 '£££££££££'
- STRING(Totale.Menge,'->>>>,>>9.99') '£'
- STRING(Totale.Liter,'->>>>,>>9.99') CHR(10).
- END.
- END.
- IF LKey3 THEN DO:
- cSort = SUBSTRING(cAlt,01,06).
- FIND Totale WHERE Totale.Sort_1 = cSort.
- IF Totale.Menge <> dMenge OR
- Totale.Liter <> dLiter THEN DO:
- PUT CONTROL cTKey3 '£££££££££'
- STRING(Totale.Menge,'->>>>,>>9.99') '£'
- STRING(Totale.Liter,'->>>>,>>9.99') CHR(10).
- END.
- END.
- IF LKey2 THEN DO:
- cSort = SUBSTRING(cAlt,01,04).
- FIND Totale WHERE Totale.Sort_1 = cSort.
- IF Totale.Menge <> dMenge OR
- Totale.Liter <> dLiter THEN DO:
- PUT CONTROL cTKey2 '£££££££££'
- STRING(Totale.Menge,'->>>>,>>9.99') '£'
- STRING(Totale.Liter,'->>>>,>>9.99') CHR(10).
- END.
- END.
- IF LKey1 THEN DO:
- cSort = SUBSTRING(cAlt,01,02).
- FIND Totale WHERE Totale.Sort_1 = cSort.
- IF Totale.Menge <> dMenge OR
- Totale.Liter <> dLiter THEN DO:
- PUT CONTROL cTKey1 '£££££££££'
- STRING(Totale.Menge,'->>>>,>>9.99') '£'
- STRING(Totale.Liter,'->>>>,>>9.99') CHR(10).
- END.
- END.
- PUT CONTROL '£' CHR(10).
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE TOTALE04 gEWK
- PROCEDURE TOTALE04 :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- PUT CONTROL '£' CHR(10).
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE WERTE_EINLESEN gEWK
- PROCEDURE WERTE_EINLESEN :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DO WITH FRAME {&FRAME-NAME}:
- VLiArt = INTEGER(CB_LiArt:SCREEN-VALUE).
- cKey = 'EWKArt' + STRING(INTEGER(CB_LiArt:SCREEN-VALUE),'99').
- GET-KEY-VALUE SECTION 'Auswertungen' KEY cKey VALUE cRetVal.
- IF cRetVal = ? THEN cRetVal = '0@0@0@999999@9999@9999@@@@@no@no@'.
- DO ix = 1 TO NUM-ENTRIES(cRetVal, '@').
- CASE ix:
- WHEN 1 THEN F_VonArtnr = INTEGER(ENTRY(ix, cRetVal, '@')) NO-ERROR.
- WHEN 2 THEN F_VonInhalt = INTEGER(ENTRY(ix, cRetVal, '@')) NO-ERROR.
- WHEN 3 THEN F_VonJahr = INTEGER(ENTRY(ix, cRetVal, '@')) NO-ERROR.
- WHEN 4 THEN F_BisArtnr = INTEGER(ENTRY(ix, cRetVal, '@')) NO-ERROR.
- WHEN 5 THEN F_BisInhalt = INTEGER(ENTRY(ix, cRetVal, '@')) NO-ERROR.
- WHEN 6 THEN F_BisJahr = INTEGER(ENTRY(ix, cRetVal, '@')) NO-ERROR.
- WHEN 7 THEN F_Herst = ENTRY(ix, cRetVal, '@') NO-ERROR.
- WHEN 8 THEN F_Wgrp = ENTRY(ix, cRetVal, '@') NO-ERROR.
- WHEN 9 THEN F_VonDatum = DATE( ENTRY(ix, cRetVal, '@')) NO-ERROR.
- WHEN 10 THEN F_BisDatum = DATE( ENTRY(ix, cRetVal, '@')) NO-ERROR.
- WHEN 11 THEN DO:
- IF ENTRY(ix, cRetVal, '@') BEGINS 'n' THEN T_Abschluss = FALSE.
- ELSE T_Abschluss = TRUE.
- END.
- WHEN 12 THEN DO:
- IF ENTRY(ix, cRetVal, '@') BEGINS 'n' THEN T_Detail = FALSE.
- ELSE T_Detail = TRUE.
- END.
- END CASE.
- END.
- DISPLAY {&list-6}.
- END.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
|