Professional Documents
Culture Documents
REPORT ZKAUFT94 .
DATA ECHTLAUF VALUE 'J'.
DATA NULL(9) VALUE '000000000'.
*****delete by borag
*DATA BUKRS LIKE COAS-BUKRS VALUE '0800'.
*****delete by borag
*****append by borag
DATA BUKRS LIKE COAS-BUKRS VALUE '1000'.
*****append by borag
INCLUDE RCNCON03.
*parameters: kennz(3) default 'EGK',
* liste default 'J' ,
* abauft like coas-aufnr default '000000000000',
* von like coas-erdat default '20000701',
* bis like coas-erdat default '20000831'.
* Anforderung
*----------------
SELECT SINGLE * FROM ZSI_DATEIEN WHERE
ZSI_AUFGB = 'AUD'
AND ZSI_DATNR = '1'. " input
IF SY-SUBRC NE 0.
WRITE: / SY-DATUM,SY-UZEIT,'kein Anforderung input (AUD/1)'.
EXIT.
ELSE.
PARA_IN_FILE = ZSI_DATEIEN-ZSI_DATNAM.
ENDIF.
* Protokoll output
*----------------
SELECT SINGLE * FROM ZSI_DATEIEN WHERE
ZSI_AUFGB = 'AUD'
AND ZSI_DATNR = '2'. " Output
IF SY-SUBRC NE 0.
WRITE: / SY-DATUM,SY-UZEIT,'kein Eintrag Output(AUD/2)'.
EXIT.
ELSE.
O_FILE = ZSI_DATEIEN-ZSI_DATNAM.
ENDIF.
* Synchronisation
*----------------
SELECT SINGLE * FROM ZSI_DATEIEN WHERE
ZSI_AUFGB = 'RDIR'
AND ZSI_DATNR = '1'. "Quittung Output
IF SY-SUBRC NE 0.
WRITE: / SY-DATUM,SY-UZEIT,'kein Eintrag Protokoll Synchr(RDIR/1)'.
EXIT.
ELSE.
CONCATENATE
ZSI_DATEIEN-ZSI_DATNAM PITAB-ZPID '.erg' INTO PARA_OUT_FILE.
ENDIF.
PERFORM PARA_INPUT.
ENDFORM. " EVENT
*---------------------------------------------------------------------*
* FORM PARA_INPUT *
*---------------------------------------------------------------------*
* ........ *
*---------------------------------------------------------------------*
FORM PARA_INPUT.
data : dumy_vondat like pitab-vondat,
dumy_bisdat like pitab-bisdat.
OPEN DATASET PARA_IN_FILE FOR INPUT IN TEXT MODE.
IF SY-SUBRC NE 0.
WRITE: / 'Fehler beim OPEN Dataset',PARA_IN_FILE.
ABBRUCH = 'J'.
EXIT.
ENDIF.
READ DATASET PARA_IN_FILE INTO PITAB.
IF SY-SUBRC NE 0.
WRITE: / 'Fehler beim Lesen Dataset',PARA_IN_FILE.
ABBRUCH = 'J'.
EXIT.
ENDIF.
PITAB-KOKRS = '80'.
*****append by borag.
dumy_vondat(4) = PITAB-VONDAT+4(4).
dumy_vondat+4(2) = PITAB-VONDAT+2(2).
dumy_vondat+6(2) = PITAB-VONDAT(2).
PITAB-VONDAT = dumy_vondat.
dumy_bisdat(4) = PITAB-BISDAT+4(4).
dumy_bisdat+4(2) = PITAB-BISDAT+2(2).
dumy_bisdat+6(2) = PITAB-BISDAT(2).
PITAB-BISDAT = dumy_bisdat.
*****append by borag.
ENDSELECT.
ELSE.
CLEAR: KKS,PGS,BMS.
LOOP AT KLADAT.
CHECK KLADAT-AUSP1(1) NE '?'.
IF TXT-KKS = KLADAT-SMBEZ.
KKS = KLADAT-AUSP1(2).
ENDIF.
IF TXT-PGS = KLADAT-SMBEZ.
PGS = KLADAT-AUSP1(2).
ENDIF.
IF TXT-BMS = KLADAT-SMBEZ.
BMS = KLADAT-AUSP1(2).
ENDIF.
IF TXT-STAUART = KLADAT-SMBEZ.
P_AUART = KLADAT-AUSP1(2).
ENDIF.
IF TXT-EINZMAS = KLADAT-SMBEZ.
EINZMAS(3) = KLADAT-AUSP1(3).
ENDIF.
ENDLOOP.
ENDIF.
ENDFORM. " LESEN_KLASSIFIZIERUNG
*---------------------------------------------------------------------*
* FORM GENERIERE_SI_AUFTRAG *
*---------------------------------------------------------------------*
* ........ *
*---------------------------------------------------------------------*
FORM GENERIERE_SI_AUFTRAG.
DATA Z_USER4(5) TYPE P.
ADD 1 TO SATZ_ZAEHLER_OUT.
PERFORM BEARBEITEN_DATUM CHANGING COAS-USER5. "datum-autor
PERFORM BEARBEITEN_DATUM CHANGING COAS-USER7.
PERFORM BEARBEITEN_DATUM CHANGING COAS-USER8.
CLEAR AUSGABE.
PERFORM LESEN_TEXT.
AUSGABE-SATZ-TXT02 = TXT02.
AUSGABE-SATZ-TXT01 = COAS-KTEXT.
UNPACK SATZ_ZAEHLER_OUT TO AUSGABE-SATZ-SATZNR.
AUSGABE-SATZ-PRFKZ = '305'.
AUSGABE-SATZ-DATUM+4(4) = SY-DATUM(4).
AUSGABE-SATZ-DATUM+2(2) = SY-DATUM+4(2).
AUSGABE-SATZ-DATUM+0(2) = SY-DATUM+6(2).
AUSGABE-SATZ-JAHR = COAS-ERDAT+2(2).
AUSGABE-SATZ-GSAUFGEB = COAS-BUKRS.
AUSGABE-SATZ-GSAUFNEH = COAS-BUKRS.
AUSGABE-SATZ-WKAUFGEB = COAS-WERKS.
AUSGABE-SATZ-WKAUFNEH = COAS-WERKS.
AUSGABE-SATZ-KSAUFGEB = COAS-KOSTV+2(8).
AUSGABE-SATZ-KSAUFNEH = COAS-USER1+2(8).
AUSGABE-SATZ-AUFNR = COAS-AUFNR+4(8).
AUSGABE-SATZ-AUFPOS = '01'.
AUSGABE-SATZ-RKA_AUF = COAS-AUFNR+4(8).
AUSGABE-SATZ-RKA_POS = '01'.
AUSGABE-SATZ-ART = COAS-AUART+0(2).
AUSGABE-SATZ-PROJEKTNR = EINZMAS(3).
AUSGABE-SATZ-KKS = COAS-USER2. "KKS.
AUSGABE-SATZ-BMS = COAS-USER3.
AUSGABE-SATZ-AV = COAS-AUTYP.
AUSGABE-SATZ-STAUTOR = COAS-USER6.
AUSGABE-SATZ-NAMEAUTOR = COAS-USER0.
AUSGABE-SATZ-DATUMAUTO = COAS-USER5. "antragsdatum
AUSGABE-SATZ-BEGINN = COAS-USER7. "auftragsbeginn
AUSGABE-SATZ-ENDE = COAS-USER8. "auftragsende
Z_USER4 = COAS-USER4.
* unpack z_user4 to ausgabe-satz-planleist.
AUSGABE-SATZ-PLANLEIST = NULL. "planleistungen
AUSGABE-SATZ-PLANLIEF = NULL. "planlieferungen
AUSGABE-SATZ-PLANSONST = NULL. "plan sonstiges
PERFORM ERMITTELN_BEARBKZ.
AUSGABE-SATZ-ENDKZ = '^'. "endezeichen
APPEND AUSGABE TO OUT_SI.
ADD 1 TO Z_EINGABE.
ENDFORM. " GENERIERE_SI_AUFTRAG
*&---------------------------------------------------------------------*
*& Form LESEN_TEXT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM LESEN_TEXT.
CLEAR TXT02.
CHECK NOT COAS-LTEXT IS INITIAL.
TDNAME = COAS-AUFNR.
REFRESH TLINETAB.
CLEAR TLINETAB.
CALL FUNCTION 'READ_TEXT'
EXPORTING
ID = TDID
LANGUAGE = SY-LANGU
OBJECT = TDOBJECT
NAME = TDNAME
IMPORTING
HEADER = THEAD
TABLES
LINES = TLINETAB
EXCEPTIONS
NOT_FOUND = 1.
IF SY-SUBRC = 0.
LOOP AT TLINETAB.
IF NOT TLINETAB-TDLINE IS INITIAL.
TXT02 = TLINETAB-TDLINE.
EXIT.
ENDIF.
ENDLOOP.
ENDIF.