Output of SM35
Hello,
How will we get the output of SM35? For example. if there are 50 records in the job out of which 40 are created and 10 are error records. I would like to get the transaction data for these records. Yes, we can go check the transaction but i want these for further processing. I am aware that there is a field called QID which is a unique session id but how will i get the transaction data passing this QID. Can some one help pls?
Regards,
Prem
Hi,
You can check tables APQI and APQD.
Also, to see the transaction data for a particular session, select that session, click on Analysis and then go to the screens. You shall the get the data entered on all the screens for that particular transaction.
Regards,
Danish.
Similar Messages
-
Creating spool for ALV report in background
Hi,
Can we create a spool request if we run in background/forgorund? please help me..
I am very much thankful for your quick responses.Yes we can create it. Execute the report in background using SM36 and then u can view the output using SM35 or the spool request number and tcode SP01.
I hope it helps.
Best Regards,
Vibha
*Please mark all the helpful answers -
How to get data from other programs output?
Hi gurus,
I have told to do the following can you please help me out.
In SM35 created many batch no. The user would like to know automatically when the session is not ok (error status).
In return of the first program RSBDCBTC_SUB we will get the queues ie QID and QSTATE.
I have told to create new Z-prog.
In that Z-prog how can i get list of QID from the result (Output) of the first prog(RSBDCBTC_SUB )?
How i get that particular QIDs in my Z-prog?
Thanks in advanced.Hi
Senthis,
You can use IMPORT and EXPORT or SET and GET
IF you take the F1 help on these KEY words it will take you to the KEY word documentation where you can find an example
of Go to TCode ABAPDOCU
where you can find an example for the same
Regards
Ramchander Rao.K -
Can't see log in 'SM35' transaction
Hello, I'm trying to watch log in transaction 'SM35'.
But when I click button to watch log system shows me an error: TemSE: input/output error.
I have no idea why it happens.For which process you are trying to generate the Temse file?
Arti -
How to append ALV grid output to LIST output
Hi,
I am working with Basis AUDIT MANUAL report for which i have to integrate around 50 standard transactions (SM37,SM35...etc) output and make it into one single report.
On execution of my report i have to get all the 50 transaction outputs sequentially.
Some standard transactions have ALV list display output and some have GRID display.I can able to append only list outputs by submit program and exporting list to memory.
Please suggest me how to get Alv grid output in midst of list output.
Regards
Kalpana.You should post your question to the ABAP forum:
ABAP Development -
I need to send the output of report as a mial
hi all,
how can i send the output of an ALV GRID as a mail ...
the visibilty of this GRID is good.
and at the same time if i use the FM 'SO_DOCUMENT_SEND_API1'
its being sent as an attachment,which i need to send jus a mail...not as an attachment.
kindly reply me ASAPREPORT YMS_SENDMAILREPORT NO STANDARD PAGE HEADING.
TABLES: DRAD,
QINF,
DRAW,
SOUC,
SOFD,
DRAP.
DATA: P_RETURN_CODE LIKE SY-SUBRC.
data: d_username LIKE DRAP-PRNAM.
* mail declarations
DATA : BEGIN OF NEW_OBJECT_ID. " the newly created email object
INCLUDE STRUCTURE SOODK.
DATA : END OF NEW_OBJECT_ID.
DATA : BEGIN OF FOLDER_ID. " the folder id of the outbox
INCLUDE STRUCTURE SOODK.
DATA : END OF FOLDER_ID.
DATA : BEGIN OF REC_TAB OCCURS 5. " the table which will contain the
INCLUDE STRUCTURE SOOS1. " information on the destination
DATA : END OF REC_TAB.
DATA : BEGIN OF OBJECT_HD_CHANGE. " the table which contains the
INCLUDE STRUCTURE SOOD1. " info for the object we will be
DATA : END OF OBJECT_HD_CHANGE. " creating
DATA : OBJECT_TYPE LIKE SOOD-OBJTP. " the type of object
DATA : BEGIN OF OBJHEAD OCCURS 5. " the header of the object
INCLUDE STRUCTURE SOLI.
DATA : END OF OBJHEAD.
DATA : BEGIN OF OBJCONT OCCURS 0. " the contents of the object
INCLUDE STRUCTURE SOLI. " i.e. the text etc
DATA : END OF OBJCONT.
DATA : BEGIN OF OBJPARA OCCURS 5. " formatting options
INCLUDE STRUCTURE SELC.
DATA : END OF OBJPARA.
DATA : BEGIN OF OBJPARB OCCURS 5. " formatting options
INCLUDE STRUCTURE SOOP1.
DATA : END OF OBJPARB.
DATA : BEGIN OF T_MAIL_TEXT OCCURS 0, "Message table for messages to
STRING(255), "user via mailbox
END OF T_MAIL_TEXT.
Parameter: p_uname like sy-uname.
**START-OF-SELECTION
START-OF-SELECTION.
d_username = p_uname.
PERFORM POPULATE_EMAIL_TEXT.
PERFORM SETUP_TRX_AND_RTX_MAILBOXES USING P_RETURN_CODE.
PERFORM CREATE_AND_SEND_MAIL_OBJECT.
* FORM POPULATE_EMAIL_TEXT *
* Inserts text for email message *
FORM POPULATE_EMAIL_TEXT.
CLEAR T_MAIL_TEXT-STRING. "puts a blank line in
APPEND T_MAIL_TEXT.
APPEND T_MAIL_TEXT.
* adds failed list on to end of success list.
T_MAIL_TEXT-STRING = 'Test email message line 1'.
APPEND T_MAIL_TEXT.
T_MAIL_TEXT-STRING = 'Test email message line 1'.
APPEND T_MAIL_TEXT.
CLEAR T_MAIL_TEXT-STRING. "puts a blank line in
APPEND T_MAIL_TEXT.
T_MAIL_TEXT-STRING = 'Header1 Header2 Header3'.
APPEND T_MAIL_TEXT.
T_MAIL_TEXT-STRING = '------------ ------------ ------------'.
APPEND T_MAIL_TEXT.
ENDFORM.
*& Form SETUP_TRX_&_RTX_MAILBOXES
* Ensure that the mailboxes of the sender (INTMGR) are set up OK
FORM SETUP_TRX_AND_RTX_MAILBOXES USING P_RETURN_CODE.
* get the user no of the sender in order to add the mail to the
* user name's outbox for future reference
SELECT SINGLE * FROM SOUC
WHERE SAPNAM = SY-UNAME. "SAP name of a SAPoffice user
IF SY-SUBRC NE 0.
"Error finding the SAPoffice user info for the user
MESSAGE E064(ZR53) WITH SY-UNAME.
P_RETURN_CODE = 1.
EXIT.
ENDIF.
*Get the outbox No for the sender from the user No where the folder
" type is an outbox
SELECT * FROM SOFD WHERE OWNTP = SOUC-USRTP "Owner type from ID
AND OWNYR = SOUC-USRYR "Owner year from the ID
AND OWNNO = SOUC-USRNO "Owner number from the I
AND FOLRG = 'O'."Output box
ENDSELECT.
IF SY-SUBRC NE 0.
" Error getting folder information for the user
MESSAGE E065(ZR53) WITH SY-UNAME.
P_RETURN_CODE = 1.
EXIT.
ENDIF.
ENDFORM. " SETUP_TRX_&_RTX_MAILBOXES
*& Form CREATE_AND_SEND_MAIL_OBJECT
FORM CREATE_AND_SEND_MAIL_OBJECT.
FOLDER_ID-OBJTP = SOFD-FOLTP. " the folder type ( usually FOL )
FOLDER_ID-OBJYR = SOFD-FOLYR. " the folder year ( usually 22 )
FOLDER_ID-OBJNO = SOFD-FOLNO. " the folder no.
OBJECT_TYPE = 'RAW'. " the type of object being added
* build up the object information for creating the object
OBJECT_HD_CHANGE-OBJLA = SY-LANGU. " the language of the email
OBJECT_HD_CHANGE-OBJNAM = 'PS to DM Interface'. " the object name
* mail subject 'Mass Linking of QA, pass/fail'
MOVE TEXT-002 TO OBJECT_HD_CHANGE-OBJDES.
OBJECT_HD_CHANGE-DLDAT = SY-DATUM. " the date of the email
OBJECT_HD_CHANGE-DLTIM = SY-UZEIT. " the time of the email
OBJECT_HD_CHANGE-OBJPRI = '1'. " the priority ( highest )
OBJECT_HD_CHANGE-OBJSNS = 'F'. " the object sensitivity
* F is functional, C - company sensitive
* object_hd_change-skips = ' '. " Skip first screen
* object_hd_change-acnam = 'SM35'. " Batch imput transaction
* object_hd_change-vmtyp = 'T'. " Transaction type
* add the text lines into the contents of the email
CLEAR OBJCONT.
REFRESH OBJCONT.
* free objcont. " added this to delete the mail contents records
LOOP AT T_MAIL_TEXT.
OBJCONT-LINE = T_MAIL_TEXT-STRING.
APPEND OBJCONT.
ENDLOOP.
CLEAR OBJCONT.
* build up the table of receivers for the email
REC_TAB-RCDAT = SY-DATUM. " the date to send the email
REC_TAB-RCTIM = SY-UZEIT. " the time to send the email
* the SAP username of the person who will receive the email
REC_TAB-RECNAM = D_USERNAME.
* the user type of the person who will send the email ( USR )
REC_TAB-SNDTP = SOUC-USRTP.
* the user year of the person who will send the email ( 22 )
REC_TAB-SNDYR = SOUC-USRYR.
* the user number of the person who will send the email
REC_TAB-SNDNO = SOUC-USRNO.
* the sap username of the person who will send the email
REC_TAB-SNDNAM = SY-UNAME.
* get the user info for the receiver of the document
SELECT SINGLE * FROM SOUC WHERE SAPNAM = D_USERNAME.
IF SY-SUBRC NE 0.
WRITE : / TEXT-001, D_USERNAME. "usnam.
EXIT.
ENDIF.
* the user number of the person who will receive the email ( USR )
REC_TAB-RECNO = SOUC-USRNO.
* the user type of the person who will receive the email ( USR )
REC_TAB-RECTP = SOUC-USRTP.
* the user year of the person who will receive the email ( USR )
REC_TAB-RECYR = SOUC-USRYR.
* the priority of the email ( highest )
REC_TAB-SNDPRI = '1'.
* check for delivery on the email
REC_TAB-DELIVER = 'X'.
* send express so recipient knows there is a problem
REC_TAB-SNDEX = 'X'.
* check for a return receipt
REC_TAB-READ = 'X'.
* the sap username of the person receiving the email
REC_TAB-ADR_NAME = D_USERNAME. "usnam.
* add this receiver to the internal table
APPEND REC_TAB.
CLEAR REC_TAB.
* call the function to create the object in the outbox of the sender
CALL FUNCTION 'SO_OBJECT_INSERT'
EXPORTING
FOLDER_ID = FOLDER_ID
OBJECT_HD_CHANGE = OBJECT_HD_CHANGE
OBJECT_TYPE = OBJECT_TYPE
OWNER = SY-UNAME
IMPORTING
OBJECT_ID = NEW_OBJECT_ID
TABLES
OBJCONT = OBJCONT
OBJHEAD = OBJHEAD
OBJPARA = OBJPARA
OBJPARB = OBJPARB
EXCEPTIONS
ACTIVE_USER_NOT_EXIST = 1
COMMUNICATION_FAILURE = 2
COMPONENT_NOT_AVAILABLE = 3
DL_NAME_EXIST = 4
FOLDER_NOT_EXIST = 5
FOLDER_NO_AUTHORIZATION = 6
OBJECT_TYPE_NOT_EXIST = 7
OPERATION_NO_AUTHORIZATION = 8
OWNER_NOT_EXIST = 9
PARAMETER_ERROR = 10
SUBSTITUTE_NOT_ACTIVE = 11
SUBSTITUTE_NOT_DEFINED = 12
SYSTEM_FAILURE = 13
X_ERROR = 14
OTHERS = 15.
IF SY-SUBRC NE 0.
MESSAGE A063(ZR53) WITH SY-SUBRC.
EXIT.
ENDIF.
* call the function to send the already created email to the receivers
CALL FUNCTION 'SO_OBJECT_SEND'
EXPORTING
FOLDER_ID = FOLDER_ID
OBJECT_ID = NEW_OBJECT_ID
OUTBOX_FLAG = 'X'
OWNER = SY-UNAME
TABLES
RECEIVERS = REC_TAB
EXCEPTIONS
ACTIVE_USER_NOT_EXIST = 1
COMMUNICATION_FAILURE = 2
COMPONENT_NOT_AVAILABLE = 3
FOLDER_NOT_EXIST = 4
FOLDER_NO_AUTHORIZATION = 5
FORWARDER_NOT_EXIST = 6
NOTE_NOT_EXIST = 7
OBJECT_NOT_EXIST = 8
OBJECT_NOT_SENT = 9
OBJECT_NO_AUTHORIZATION = 10
OBJECT_TYPE_NOT_EXIST = 11
OPERATION_NO_AUTHORIZATION = 12
OWNER_NOT_EXIST = 13
PARAMETER_ERROR = 14
SUBSTITUTE_NOT_ACTIVE = 15
SUBSTITUTE_NOT_DEFINED = 16
SYSTEM_FAILURE = 17
TOO_MUCH_RECEIVERS = 18
USER_NOT_EXIST = 19
X_ERROR = 20
OTHERS = 21.
IF SY-SUBRC EQ 0.
MESSAGE I035(ZR53) WITH NEW_OBJECT_ID D_USERNAME. "usnam.
ELSE.
MESSAGE I036(ZR53) WITH D_USERNAME." sy-subrc.
ENDIF.
ENDFORM. " CREATE_AND_SEND_MAIL_OBJECT -
Hi all,
I have a recuirment to create a LSMW and i need to list output as the summary section with the following details.
Report run by :
Report date :
totla number of records uploaded:
total number of records successfully loaded
total number of records erroreouns :
Is this possible to do in the LSMW or can anyone give your approach to goahead with this type of scenario.
Regards,
Madhaviyes and no.
You can certainly add info about the user and the date.
you can do this with small coding at processing time END_OF_PROCESSING
You cannot give any info about :
totla number of records uploaded:
total number of records successfully loaded
total number of records erroreouns :
Because the only place you can add your own coding is the conversion program (fieldmapping and migration rules), this is long before you actually post the records to the data base.
LSMW is a cockpit for migration. Once you have created the batch input, you can leave LSMW and process the batch input in SM35. once you created the IDOCs, you can go to BD87 to process it. This is not really a natural part of LSMW, LSMW uses and combines standard processes that existed already long before LSMW. -
Output triggred in the invoice with Date/Time 1
Output triggred in the invoice with Date/Time as 1 i e Send with periodically scheduled job.
So could you let me know when this gets triggeed if we maintain 1 in condition record?
Thanks,
PraveenHi Praveen,
When you maintain 1in the Date/Time column in the Condition Records for O/P of say the Invoice it means that you are telling the system to send the O/P with periodically scheduled job.
To achieve this you must use the report program RSNAST00.The message is processed through report program RSNAST00. This report program can be scheduled periodically or started manually.
For scheduling periodically you need to set up a batch process in SM35.
Hope this helps,
J Nagesh -
Want to get log created in SM35 into report
Here I am using RSBDCSUB report to process session created in SM35. For that I am using submit command.
SUBMIT RSBDCSUB WITH SELECTION-TABLE T_SELTAB
EXPORTING LIST TO MEMORY AND RETURN.
After this I am using 'LIST_FROM_MEMORY' and u2018LIST_TO_ASCI' Function modules to read the output of RSBDCSUB and to print it in my report.
but i want to print log created in SM35 in my report.
how can i get that log in report????????????????
regards,
snehalGuys:
There's an easy way....when you are in a log file.....go to the command box and type in the following command:
=PRI
This is stating, "print out the log to my screen". Once it goes into the mode of a report....you can Export the report to any type file (Uncoverted, Excel, Word, etc.)
List > Export > Local file
Cheers, Al -
Problem FOR creating session in SM35 with EDI process using trans.sm35
When we create output for billing documents (VF31 t-code) for EDI output with following inputs, it create input session for data uploading, which we can check with (SM35 t-code). Thru which we upload the data in system.
Till 31st March 2007 it is working and we have uploaded our data also. Since 1st April 2007 we are unable to create session for uploading the dataHai Manish Patel,
There might be date range hard coding values.
Please <b>check the Report Program.</b>
<b>Reward points if it helps you.</b>
Regds,
Rama.Pammi -
Problem FOR creating session in SM35 with EDI process using trans.VF31
Hi all,
When we create output for billing documents (VF31 t-code) for EDI output with following inputs, it create session for data uploading, which we can check with (SM35 t-code). Thru which we upload the data in system.
Till 31st March 2007 it is working and we have uploaded our data also. Since 1st April 2007 we are unable to create session for uploading the data
ManishHai Manish Patel,
There might be date range hard coding values.
Please <b>check the Report Program.</b>
<b>Reward points if it helps you.</b>
Regds,
Rama.Pammi -
Hi gurus,
I have told to do the following can you please help me out.
In SM35 created many batch no. The user would like to know automatically when the session is not ok (error status).
In return of the first program RSBDCBTC_SUB we will get the queues ie QID and QSTATE.
I have told to create new Z-prog.
In that Z-prog how can i get list of QID from the result (Output) of the first prog(RSBDCBTC_SUB )?
How i get that particular QIDs in my Z-prog?
Thanks in advanced.
Edited by: snehal patil on Nov 26, 2008 11:23 AMHi,
I assume to get the report, it is just enough to create an ABAP query (transaction code SQ02, SQ03 and SQ01).
You can use table APQI. You can pull the status from the field APQI-QSTATE.
You can run the query in background and you can send the output as .pdf attachment to the user, if "mail" is used as output device.
Regards, -
Hi ,
I have a requirement to provide the list of inforecord that went to error in SM35.
Is there any standard program that could provide the log contents?
I found few standard programs but that are giving me screen data for all records even for the successfull records.
Any Ideas..
Thanks & Regards,
AnkurHi Ankur..
Program is there.
Program name is RSBDCLOG.
Below is the program's source code..
*@(#)RSBDCLOG %I% SAP %E%
SAP AG Walldorf
Systeme, Anwendungen und Produkte in der Datenverarbeitung
(C) Copyright SAP AG 1997
Projekt: R/3 BatchInput
Entwickl.-Stand: SAP , BIN-Datenbank
Source-Typ: Report
Autor: SAP
Entwicklungsstand:
30.04.97 first version with new protocol interface based on
previous RSBDCLOG (copied to RSBDCOLG and used if
parameter bdc/new_protocol = off)
REPORT RSBDCLOG MESSAGE-ID 00 LINE-SIZE 102
NO STANDARD PAGE HEADING.
Dieser Report dient zur Anzeige des Inhalts eines Batch-Input *
Protokolls. Batch Input Protokolle werden ab dieser Version *
als TemSe Files abgelegt. Die Zuordnung eines TemSe Files zu einem *
Batch Input Lauf erfolgt ueber die neue Tabelle APQL, die damit *
das Protokoll Verzeichnis realisiert. *
1. Die Tabelle BDCLD beschreibt die Struktur eines Verzeichnis- *
Eintrags und entspricht damit APQL. *
2. Die Tabelle BDCLM beschreibt einen Eintrag innerhalb eines *
TemSe Protkoll Files (M = Message). *
*-- Datendefinitionen zum Report ---*
TABLES: BDCMH, *BDCMH, "BatchInput Trans.Header
BDCTH, *BDCTH, "BatchInput Mess. Header
APQD, *APQD, "Queue Daten
APQI, *APQI, "Queue Info
APQL, "Protocol Directory Info
D0220, "Dynpro 220
D0300. "Dynpro 320
TABLES: SPOP. "infostruktur popup_to_confirm
DATA: BEGIN OF BIM, "Aktivitaeten Uebersicht
AONL(4) VALUE 'AONL', "Mappen-Abspielen im Online
ABTC(4) VALUE 'ABTC', "Mappen-Abspielen im Batch
FREE(4) VALUE 'FREE', "Freigeben einer Mappe
LOCK(4) VALUE 'LOCK', "Sperren und Entsperren von Mappen
DELE(4) VALUE 'DELE', "Loeschen von Mappen
ANAL(4) VALUE 'ANAL', "Analysieren von Mappen
END OF BIM.
DATA BEGIN OF BDCLDA OCCURS 0. " ITabelle der Verzeichniseintraege
INCLUDE STRUCTURE APQL. " LogTabelle
DATA END OF BDCLDA .
DATA: BEGIN OF ITRAN OCCURS 0,
CNT TYPE I, "zaehler
TRANS TYPE I, "transanktions#
QID LIKE APQI-QID , "qid
FRAGM(1) , "fragmented flag
END OF ITRAN.
DATA: ISTART TYPE I,
IENDE TYPE I,
ISTEP TYPE I,
IND TYPE I.
DATA: BEGIN OF BLOCK,
MARK TYPE I VALUE 0, "markierungsflag
SA LIKE SY-CPAGE, " block anfang
ZA LIKE SY-CUROW,
SE LIKE SY-CPAGE, " block ende
ZE LIKE SY-CUROW,
END OF BLOCK.
DATA: BEGIN OF MTAB OCCURS 0.
INCLUDE STRUCTURE APQI.
DATA: END OF MTAB.
DATA: BEGIN OF MY ,
MSGV1 LIKE SY-MSGV1,
MSGV2 LIKE SY-MSGV2,
MSGV3 LIKE SY-MSGV3,
MSGV4 LIKE SY-MSGV4,
END OF MY.
DATA: T-COUNT TYPE I.
DATA: "Hilfsfelder Zugriff Logfile
S_LOGNAME(80),
DECISION(01),
JA(01) VALUE 'J', "yeah
NEIN(01) VALUE 'N', "ni
EC TYPE I,
DEL_RETURN TYPE I,
NAMELN TYPE I,
TFOUND TYPE I,
TFCOUNT TYPE I,
DTRANCNT TYPE I VALUE 0,
PROTCNT TYPE I,
DCOUNT TYPE I,
MCOUNT TYPE I,
CHECKCNT TYPE I,
MAXLINE TYPE I VALUE 0,
WSTAT(04) TYPE C,
USE(1) TYPE C,
MODUS(1) TYPE C,
RUNLEVEL(1) TYPE C,
ZW-FNAME(80), "Hilfsfeld feldname
TMAPN(12) TYPE C, "hilfsfeld bdcld-GROUPID
BDCMHLEN TYPE I VALUE 20, "MessageHeader laenge 20 Bytes
BDCTHLEN TYPE I VALUE 6, "TransactionHeader laenge 6 Bytes
WHICHTRAN(3) TYPE C,
ULINE(80) VALUE "Unterstrich
TABIND LIKE SY-TABIX,
TABIND1 LIKE SY-TABIX,
PFSTATUS LIKE SY-PFKEY,
OLDSTATUS LIKE SY-PFKEY,
MOD_BILD TYPE I VALUE 0,
LOOP(1) VALUE 'L', "loop flag
TABW(1) VALUE 'T' , "loop flag
MSG_ART(1), "message art e=error w=warning s=
SEPCHAR(1), "seperator character def.
HBEGIN(1), "header beginn character Def.
COUNTX TYPE X, "header beginn character Def.
COUNTY TYPE I, "header beginn character Def.
EAFELD TYPE X VALUE '80', "header beginn character Def.
HLEN TYPE I VALUE 20, "header len
SAVE_CUROW0 LIKE SY-CUROW,
SAVE_CUROW1 LIKE SY-CUROW,
SAVE_CUROW2 LIKE SY-CUROW,
SAVE_CUROW3 LIKE SY-CUROW,
SAVE_CUROW4 LIKE SY-CUROW,
SAVE_CUROW5 LIKE SY-CUROW,
SAVE_CUROW6 LIKE SY-CUROW,
SAVE_CUROW7 LIKE SY-CUROW,
SAVE_CUROW8 LIKE SY-CUROW,
SAVE_LSIND LIKE SY-LSIND,
SAVE_LILLI1 LIKE SY-LILLI,
SAVE_LILLI2 LIKE SY-LILLI,
SAVE_PAGE1 LIKE SY-CPAGE,
SAVE_PAGE2 LIKE SY-CPAGE,
SAVE_PAGE8 LIKE SY-CPAGE,
SAVE_STARO LIKE SY-STARO,
SAVE_STACO LIKE SY-STACO,
SAVE_RC LIKE SY-SUBRC,
LINCT LIKE SY-LINCT,
LLINCT LIKE SY-LINCT,
E(1) VALUE 'E',
PARAMNAME(11) VALUE 'bdc/logfile',
frame1(14),
D0320-FCODE LIKE SY-UCOMM .
DATA:
Hilfsfeld zur Parameter-Uebergabe an Langtext-Anzeige eines
Job-Protokoll Eintrags
MSG_TEXT LIKE SHKONTEXT-MELDUNG,
MSG_ARBGB LIKE SHKONTEXT-MELD_ID,
MSG_NR LIKE SHKONTEXT-MELD_NR,
MSG_TITLE LIKE SHKONTEXT-TITEL.
DATA:
Hilfsfeld zur protokollfeststellung im zentralen directory
SHIFTLEN TYPE I VALUE 0,
PROTFLEN TYPE I VALUE 0,
PROTFOFF TYPE I VALUE 0,
RLEN TYPE I VALUE 0.
DATA: "Konstanten
APQD-MAXA TYPE I VALUE 100, " maximaler access auf apqd
AUTOR(05) TYPE C VALUE 'HARMS',
STANDALONE(01) TYPE C VALUE 'O',
DYNPRO(01) TYPE C VALUE 'D',
SUBMIT(01) TYPE C VALUE 'S'.
DATA: "zaehler
TFCNT TYPE I VALUE 0,
ON TYPE I VALUE 1,
OK TYPE I VALUE 1,
OFF TYPE I VALUE 0,
GUI_OBJ TYPE I VALUE 9,
HCOUNT TYPE I VALUE 0,
TCOUNT TYPE I VALUE 0,
TCOUNT1 TYPE I VALUE 0,
TCOUNT2 TYPE I VALUE 0,
WCOUNT TYPE I VALUE 0,
ZCOUNT TYPE I VALUE 0,
QCOUNT TYPE I VALUE 0.
DATA BEGIN OF LOG.
INCLUDE STRUCTURE RLOG.
DATA END OF LOG.
DATA:
BEGIN OF ZWD,
VDAT(8) TYPE C,
XDAT(1) TYPE C,
BDAT(8) TYPE C,
END OF ZWD.
DATA: "Hilfsfelder
VDAT TYPE D,
BDAT TYPE D.
DATA: "Eingabedatum fuer Ausgabedatum
BEGIN OF DATE,
JJJJ(4) TYPE N, "jahr
MM(2) TYPE N, "monat
TT(2) TYPE N, "tag
END OF DATE.
DATA: "Eingabedatum fuer Ausgabedatum
BEGIN OF DAT ,
TT(2) TYPE N, "tag
MM(2) TYPE N, "monat
JJJJ(4) TYPE N, "jahr
END OF DAT .
DATA: BEGIN OF DYH. "Dynpro Header
INCLUDE STRUCTURE D020S.
DATA: END OF DYH.
DATA: BEGIN OF DYF OCCURS 250. "Dynpro Felder
INCLUDE STRUCTURE D021S.
DATA: END OF DYF.
DATA: BEGIN OF DYA OCCURS 100. "Dynpro Ablauf-Logik
INCLUDE STRUCTURE D022S.
DATA: END OF DYA.
DATA: BEGIN OF DYM OCCURS 20. "Dynpro Matchcode-Subkeys
INCLUDE STRUCTURE D023S.
DATA: END OF DYM.
DATA: BEGIN OF DYL OCCURS 64, "Loop-Information
LTYP,
LANF TYPE X,
LBLK TYPE X,
LREP TYPE X,
END OF DYL.
n e u -
DATA: BEGIN OF TF OCCURS 0, "interne tabelle mit dynprofeldern
COUNT TYPE I VALUE 0, "zum abmischen
TRCD(4),
STAT(4),
PGM(8), "programmname
DYN(4) TYPE N, "dynpronummer
FNAME(35),
FARG(80),
FSTART(5) TYPE P,
FENDE(5) TYPE P,
END OF TF.
DATA: BEGIN OF DYT. "Dynpro Felder
INCLUDE STRUCTURE D021S.
DATA: END OF DYT.
DATA: BEGIN OF ANAL,
COUNT TYPE I VALUE 0, " zaehler
ECOUNT TYPE I VALUE 0, " zaehler
BA LIKE APQD-TRANS, " block anfang
BE LIKE APQD-TRANS, " block ende
OBA LIKE APQD-TRANS, " block anfang old
OBE LIKE APQD-TRANS, " block ende old
FKT1 LIKE APQD-TRANS, " faktor1
FKT2 LIKE APQD-TRANS, " faktor2
MAXBLK LIKE APQD-TRANS, " maximale blockanzahl
BLK# LIKE APQD-TRANS, " blocknummer lfd.
END OF ANAL.
interne Tabelle ---
DATA:
BEGIN OF ITAB OCCURS 0, "Interne Tabelle fuer Grundliste
COUNT LIKE APQI-TRANSCNT, "Record count, Hilfsfeld fuer debug
TCNT LIKE APQI-TRANSCNT, "transaction counter all
MCNT LIKE APQI-MSGCNT, "message counter all
ETCNT LIKE APQI-TRANSCNTE, "transaction counter errore
EMCNT LIKE APQI-MSGCNTE, "message counter error
DTCNT LIKE APQI-TRANSCNTD, "transaction counter delete
DMCNT LIKE APQI-MSGCNTD, "message counter delete
FTCNT LIKE APQI-TRANSCNTF, "transaction counter finished
FMCNT LIKE APQI-MSGCNTF, "message counter finished
BTCNT LIKE APQI-TRANSCNTF, "transaction counter booked
BMCNT LIKE APQI-MSGCNTF, "message counter booked
QDEL LIKE APQI-QERASE, "kennzeichen loeschen mappe
STATD(12),
END OF ITAB.
DATA:
BEGIN OF OLDI, "Headerdaten von Tapqd-udat (Vergl.)
HYC(1), "header eyecatcher
PGM(8), "programmname
DYN(4) TYPE N, "dynpronummer
SYNC(1), "syncpoint
STAT(1), "STatus
SCHAR(1), "Seperatorcharacter Def.
TRCD(4), "Trans.code
TCNT LIKE APQD-TRANS,
MCNT LIKE APQD-BLOCK,
END OF OLDI.
DATA: MFART(2) TYPE C, "Hilfsfelder abmischen dynpro mit
MFSTART TYPE I VALUE 0, "feldinhalten
MFENDE TYPE I VALUE 0,
MFLEN TYPE I VALUE 0.
DATA:
BEGIN OF Z, "Hilfsstruktur fuer sy-lisel
TRCD(04),
FILLER1(08),
STAT(03),
FILLER2(09),
PROG(08),
FILLER3(01),
DYN(04),
FILLER4(44),
END OF Z.
DATA:
BEGIN OF LF, "Hilfsstruktur fuer loop extension
FILLER1(01),
ZEILE(02) TYPE N,
FILLER2(01),
END OF LF.
DATA: ZEILE(2) TYPE P, "Hilfsfelder Dynproaufbereitung
SPALTE(2) TYPE P,
PLENG(2) TYPE P,
PLANF(2) TYPE P,
PLBLK(2) TYPE P,
PLREP(2) TYPE P,
ZAEHL(4) TYPE P,
PZEILE(2) TYPE P,
PCOLN(2) TYPE P.
DATA: BEGIN OF BILD OCCURS 24, " -''-
ZEILE(120),
FLAG,
END OF BILD,
CHAR79(79),
DYNAME(12).
DATA: BEGIN OF BILDE OCCURS 0, "Eingabefelder aufbereitet
ZEILE LIKE ZEILE,
PCOLN LIKE PCOLN,
PLENG LIKE PLENG,
PREP TYPE I,
GUIOBJ(01),
FLD(120),
END OF BILDE,
REF-ZEILE LIKE ZEILE.
DATA:
BEGIN OF BDC,
OKCODE(5), "Dynpro Okcode
CURSOR(35), "Cursorposition Feldname
END OF BDC. "oder Format ZZ,SS
DATA:
BEGIN OF CURSOR,
ZZ(2) TYPE N, "Zeile
FILLER(1), "Komma
SS(2) TYPE N, "Sspalte
END OF CURSOR. " Z = Zeile, S = Spalte
DATA:
BEGIN OF FLD,
FNAME(80),
FVAL(80),
END OF FLD.
DATA: "Popup 220 Groesse
BEGIN OF D220,
L TYPE I VALUE 10 , " links 10
O TYPE I VALUE 06 , " oben 06
R TYPE I VALUE 38 , " rechts38
U TYPE I VALUE 11 , " unten 11
END OF D220.
INCLUDE RSTR0110.
DATA: BEGIN OF PROT_LIST OCCURS 0.
INCLUDE RSTR0112.
DATA: SEEN(1),
TO_BE_DELETED(1),
HAS_CHANGED(1),
LOCAL_HOST(24),
END OF PROT_LIST.
DATA: "reports
REOREPORT(8) TYPE C VALUE 'RSBDCREO', " Protokollreorganisation
SUBREPORT(12) TYPE C VALUE 'RSBDCBTC_NEW', " Submit Batch
LOGREPORT(8) TYPE C VALUE 'RSBDCLOG', " Protokoll
DMPREPORT(12) TYPE C VALUE 'RSBDCDMP_NEW', " Queue Dump
TSTREPORT(8) TYPE C VALUE 'RSBDCCKT', " alle BDCLG Files in APQL?
APLREPORT(8) TYPE C VALUE 'RSBDCCKA'. " TemSe File zu APQL-Eintrag?
TABLES: SNAP. "Rabaxauswertung
FIELD-SYMBOLS: .
DATA:
BEGIN OF D320, "Popup 320 Groesse
L TYPE I VALUE 30 , " links 30
O TYPE I VALUE 06 , " oben 06
R TYPE I VALUE 60 , " rechts60
U TYPE I VALUE 08 , " unten 08
END OF D320.
DATA: FOLGESEGMENT TYPE I,
SOFFS TYPE I ,
APQDVARLEN TYPE I,
BDCMHSEPC(01),
MAXVARDATALEN TYPE I VALUE 0.
*---- common part daten erhalten ein eigenes segment----
DATA BEGIN OF COMMON PART VARDAT.
DATA: APQDVARDATA(21333), " neue datenfelder wegen
*APQDVARDATA(21333), " segmentierten mappen
UDAT(21333).
DATA END OF COMMON PART VARDAT.
INCLUDE RSBDCIL1. " data definitionen fuer rsbdcil2
INCLUDE RSBDCIL2. " Forms zur Protokollanzeige
INCLUDE RSBDCIL3. " Form zum Lesen des TemSe Files
" in Anlehnung an LSTLGFXX.
*---- START OF SELECTION -
DATA: PROTPARAM(60) VALUE 'bdc/new_protocol',
NEWPROT(3) VALUE 'off'.
PARAMETER MAPPE LIKE APQI-GROUPID DEFAULT '*'.
PARAMETER QUEUE_ID LIKE APQD-QID DEFAULT '0' NO-DISPLAY.
PARAMETER TEMSEID LIKE APQL-TEMSEID DEFAULT '0' NO-DISPLAY.
START-OF-SELECTION.
CALL 'C_SAPGPARAM' ID 'NAME' FIELD PROTPARAM
ID 'VALUE' FIELD NEWPROT.
IF NEWPROT <> 'on'.
SUBMIT RSBDCOLG AND RETURN.
EXIT.
ENDIF.
CLEAR LOG.
IF SY-TCODE NE 'SE38'. " runlevel festlegen
RUNLEVEL = SUBMIT.
ELSE.
RUNLEVEL = STANDALONE.
ENDIF.
IF SY-BATCH <> SPACE. " runlevel festlegen
RUNLEVEL = STANDALONE. " im batch
ENDIF.
IF RUNLEVEL = SUBMIT.
GET PARAMETER ID 'BDC' FIELD LOG.
ELSE.
PERFORM CHECK_PARAM.
ENDIF.
CLEAR: BDCLD, SHOWTYP.
REFRESH: BDCLD.
IF LOG-MODUS EQ 'A' OR
LOG-MODUS EQ 'B'.
IF LOG-TEXT(17) NE SPACE.
MOVE LOG-TEXT TO ZWD.
MOVE ZWD-VDAT TO VDAT.
PERFORM MAKE_DATE USING ZWD-VDAT VDAT.
MOVE ZWD-BDAT TO BDAT.
PERFORM MAKE_DATE USING ZWD-BDAT BDAT.
ELSE.
MOVE '00000000' TO VDAT.
MOVE '99999999' TO BDAT.
ENDIF.
ENDIF.
CASE LOG-MODUS.
WHEN 'A'.
SET PF-STATUS 'ALPH'.
SET TITLEBAR 'ALP'.
PERFORM ALL_PROT. "vh3914
PERFORM LOG_ALL.
PERFORM SHOW_DIR.
WHEN 'B'.
SET PF-STATUS 'ALPH'.
SET TITLEBAR 'ALP'.
PERFORM ALL_PROT. "vh3914
PERFORM LOG_ALL.
PERFORM SHOW_DIRP.
WHEN 'C'.
SET PF-STATUS 'ALPO'.
SET TITLEBAR 'ALP'.
PERFORM ALL_PROT. "vh3914
PERFORM LOG_ALL.
PERFORM INFO_BIPROT.
IF LOG-TCNT GT 1.
LOG-MODUS = 'F'.
SET PF-STATUS 'ALPF'.
PERFORM SHOW_DIRF.
ELSE.
PERFORM SHOW_DIRQ.
ENDIF.
WHEN 'D'.
SET PF-STATUS 'ALPO'.
SET TITLEBAR 'ALP'.
PERFORM ALL_PROT. "vh3914
PERFORM LOG_ALL.
PERFORM SHOW_DIR.
WHEN 'E'.
SET PF-STATUS 'ALPO'.
SET TITLEBAR 'ALP'.
PERFORM ALL_PROT. "vh3914
PERFORM LOG_ALL.
PERFORM SHOW_DIRE.
WHEN 'M'.
SET PF-STATUS 'MESS'.
SET TITLEBAR 'MSG' WITH LOG-MAPN.
CLEAR BDCLD.
MOVE-CORRESPONDING LOG TO BDCLD.
MOVE LOG-MAPN TO BDCLD-GROUPID.
MOVE LOG-QUID TO BDCLD-QID.
PERFORM LOG_MES.
PERFORM SHOW_MES.
WHEN 'P'.
PERFORM ALL_PROT. "vh3914
PERFORM INFO_BIPROT.
WHEN 'Q'.
PERFORM ALL_PROT. "vh3914
PERFORM DELE_BIPROT.
WHEN OTHERS.
SET PF-STATUS 'ALPH'.
SET TITLEBAR 'ALP'.
PERFORM ALL_PROT. "vh3914
PERFORM LOG_ALL.
PERFORM SHOW_DIR.
ENDCASE.
PERFORM SEND_MSG.
SET PARAMETER ID 'BDC' FIELD LOG.
*---- PBO MODULE REPORT RSBDCLOG -
MODULE D0220_POPINI PBO *
Initialisierung der Cursor-Eingabe-Felder (ja,nein) in Popup *
MODULE D0220_POPINI OUTPUT.
CLEAR: ZW-FNAME.
ZW-FNAME = 'D0220-POPNEIN'.
SET CURSOR FIELD ZW-FNAME.
SET PF-STATUS '0220'.
SET TITLEBAR '009'.
D0220-POPJA = TEXT-027. "ja
D0220-POPNEIN = TEXT-028. "nein
ENDMODULE. " D0220_POPINI.
MODULE D0320_INIT PBO *
Initialisierung der Felder des Dynpros 0320 *
MODULE D0320_INIT OUTPUT.
Initialisierung der Dynprofelder
SET PF-STATUS '0320'.
SET TITLEBAR '015'.
CLEAR: D0320-FCODE.
CLEAR: D0300-BATCHSYS.
ENDMODULE. " D0300_INIT.
*---- PAI MODULE REPORT RSBDCLOG -
MODULE D0220_DELETE PAI *
Loeschen eines Protokolls *
MODULE D0220_DELETE.
IF SY-UNAME EQ AUTOR. BREAK-POINT 1. ENDIF.
CLEAR: ZW-FNAME.
GET CURSOR FIELD ZW-FNAME.
IF D0220-FCODE = 'CONT' OR " f12 abbrechen, nein
SY-CUROW = 7 OR
SY-CUROW = 4 OR
ZW-FNAME = 'D0220-POPNEIN' OR
ZW-FNAME = 'D0220-POPCONT'.
RETURN = 0.
ENDIF.
IF D0220-FCODE <> 'CONT' AND " ja
( ZW-FNAME = 'D0220-POPJA' OR
SY-CUROW = 5 ).
RETURN = 0.
D0220-FCODE = 'DEL'.
ENDIF.
ENDMODULE. " D0220_DELETE
MODULE D0320_START *
Angabe der Blocknummer in der Mappenanalyse *
MODULE D0320_FCODE.
CASE D0320-FCODE.
WHEN ' ' . "normale verarbeitung
IF D0300-BLOCKNR GT ANAL-MAXBLK OR
D0300-BLOCKNR LE 0.
RETURN = 328.
PERFORM SEND_MSG.
SET SCREEN 320.
ENDIF.
WHEN 'GOON' . "normale verarbeitung
IF D0300-BLOCKNR GT ANAL-MAXBLK OR
D0300-BLOCKNR LE 0.
RETURN = 328.
PERFORM SEND_MSG.
SET SCREEN 320.
ENDIF.
WHEN 'CONT' . "f12 abbrechen
WHEN OTHERS .
SET PF-STATUS '0320'.
SET TITLEBAR '015'.
SET SCREEN 320.
ENDCASE. "D0320-FCODE
ENDMODULE. " d0320_fcode
FORM : info_biprot *
Info ueber ein Protokoll *
FORM INFO_BIPROT.
CLEAR: QFOUND.
LOOP AT BDCLD.
IF LOG-QUID EQ BDCLD-QID.
QFOUND = QFOUND + 1.
ENDIF.
ENDLOOP.
IF QFOUND GT 0.
LOG-RETC = 'PROT'.
LOG-TCNT = QFOUND.
ENDIF.
ENDFORM. " info_biprot
FORM : dele_biprot *
loeschen eines Protokolls von aussen *
FORM DELE_BIPROT.
CLEAR: QFOUND.
LOOP AT BDCLD.
IF LOG-QUID EQ BDCLD-QID.
QFOUND = QFOUND + 1.
PERFORM DEL_MESL.
ENDIF.
ENDLOOP.
IF QFOUND GT 0.
LOG-RETC = 'DELE'.
LOG-TCNT = QFOUND.
ENDIF.
ENDFORM. " dele_biprot
FORM : all_prot "vh3914 *
FORM ALL_PROT.
CLEAR: BDCLD-CNT,
BDCLD#.
PERFORM LOG_ALL. "vh3914
IF BDCLD-CNT EQ 0. "vh3914
RETURN = 318. "vh3914
EXIT. "vh3914
ELSE. "vh3914
RETURN = 0. "vh3914
ENDIF. "vh3914
SORT: BDCLD BY CREDATE DESCENDING "vh3914
CRETIME DESCENDING. "vh3914
ENDFORM. " all_prot
FORM : log_all *
FORM LOG_ALL.
PERFORM LOG_DIR.
ENDFORM. " log_all.
FORM : show_all *
FORM SHOW_ALL.
PERFORM SHOW_DIR.
ENDFORM. " show_all.
FORM : log_dir *
FORM LOG_DIR.
CLEAR: BDCLD.
REFRESH: BDCLD.
CLEAR: BDCLDA. "vh3914
REFRESH: BDCLDA. "vh3914
SELECT * FROM APQL INTO TABLE BDCLDA. "protocol directory data
IF SY-SUBRC = 4. " Verzeichnis ist leer
RETURN = 318. "MESSAGE S318 WITH 'Verzeichnis'
EXIT.
ENDIF.
IF SY-SUBRC NE 0. " Fehler beim Lesen des Verzeichni
RETURN = 317. "MESSAGE S317 WITH 'Verzeichnis' 'gelesen
EXIT.
ENDIF.
SORT: BDCLDA BY CREDATE DESCENDING
CRETIME DESCENDING.
LOOP AT BDCLDA "vh3914
WHERE MANDANT = SY-MANDT.
MOVE-CORRESPONDING BDCLDA TO BDCLD. "vh3914
BDCLD-CNT = BDCLD-CNT + 1. "vh3914
BDCLD# = BDCLD# + 1. "vh3914
APPEND BDCLD. "vh3914
ENDLOOP. "vh3914
ENDFORM. " log_dir.
FORM : show_dir *
FORM SHOW_DIR.
IF SY-UNAME EQ AUTOR. BREAK-POINT 1. ENDIF.
IF RETURN GT 0.
EXIT.
ENDIF.
SHOWTYP = 'DIR '.
LOOP AT BDCLD WHERE CREDATE GE VDAT
AND CREDATE LE BDAT.
FORMAT RESET.
WRITE:/01(102) SPACE COLOR COL_NORMAL.
WRITE: 24(27) BDCLD-GROUPID COLOR COL_KEY INTENSIFIED ON.
PERFORM WRITE_DATE USING BDCLD-CREDATE.
WRITE: 02(10) DATE1 DD/MM/YYYY COLOR COL_NORMAL,
13(08) BDCLD-CRETIME USING EDIT MASK '__:__:__'
COLOR COL_NORMAL.
WRITE: 52(12) BDCLD-CREATOR COLOR COL_NORMAL,
81(24) BDCLD-DESTSYS COLOR COL_NORMAL.
PERFORM WRITE_VLINE USING ' ' 23.
PERFORM WRITE_VLINE USING ' ' 12.
PERFORM WRITE_VLINE USING ' ' 51.
PERFORM WRITE_VLINE USING ' ' 80.
PERFORM WRITE_VLINE USING ' ' 1.
PERFORM WRITE_VLINE USING ' ' 102.
HIDE: BDCLD, BDCLD#.
ENDLOOP.
PERFORM LAST_LISTLINE.
LINCT0 = SY-SROWS. "seitengroesse grundliste festhalten
ENDFORM. " show_dir.
FORM : show_dirp *
FORM SHOW_DIRP.
show directory for log-name
IF RETURN GT 0.
EXIT.
ENDIF.
SHOWTYP = 'DIRP '.
CLEAR: NAMELN, LMAPN, TFOUND.
IF LOG-MAPN CA '%'.
NAMELN = SY-FDPOS.
WRITE LOG-MAPN TO LMAPN(NAMELN).
ELSE.
IF LOG-MAPN CA ' '.
NAMELN = SY-FDPOS.
ELSE.
NAMELN = 12.
ENDIF.
WRITE LOG-MAPN TO LMAPN(NAMELN).
ENDIF.
LOOP AT BDCLD WHERE CREDATE GE VDAT
AND CREDATE LE BDAT.
CLEAR: TMAPN.
WRITE BDCLD-GROUPID TO TMAPN(NAMELN).
IF LMAPN EQ TMAPN.
TFOUND = TFOUND + 1.
FORMAT RESET.
WRITE:/01(102) SPACE COLOR COL_NORMAL.
WRITE: 24(27) BDCLD-GROUPID COLOR COL_KEY INTENSIFIED ON.
PERFORM WRITE_DATE USING BDCLD-CREDATE.
WRITE: 02(10) DATE1 DD/MM/YYYY
COLOR COL_NORMAL,
13(08) BDCLD-CRETIME USING EDIT MASK '__:__:__'
COLOR COL_NORMAL,
52(12) BDCLD-CREATOR COLOR COL_NORMAL,
81(24) BDCLD-DESTSYS COLOR COL_NORMAL.
PERFORM WRITE_VLINE USING ' ' 23.
PERFORM WRITE_VLINE USING ' ' 12.
PERFORM WRITE_VLINE USING ' ' 51.
PERFORM WRITE_VLINE USING ' ' 80.
PERFORM WRITE_VLINE USING ' ' 1.
PERFORM WRITE_VLINE USING ' ' 102.
HIDE: BDCLD, BDCLD#.
ENDIF.
ENDLOOP.
IF TFOUND = 0.
RETURN = 324. " keine Protokolle gefunden
ELSE.
PERFORM LAST_LISTLINE.
ENDIF.
LINCT0 = SY-SROWS. "seitengroesse grundliste festhalten
ENDFORM. " show_dirp.
FORM : show_dirq *
FORM SHOW_DIRQ.
show directory and message for QUEUE_ID
IF RETURN GT 0.
EXIT.
ENDIF.
SHOWTYP = 'DIRQ '.
CLEAR: QFOUND, LMAPN.
LOOP AT BDCLD.
IF LOG-QUID EQ BDCLD-QID.
QFOUND = QFOUND + 1.
QFOUND = 1.
IF QFOUND = 1.
FORMAT COLOR COL_HEADING INTENSIFIED ON.
WRITE:/01(102) SY-ULINE.
WRITE:/24(12) 'Mappenname '(003).
WRITE: 02(11) 'Angelegt '(004),
12(08) ' ',
52(12) 'User '(005).
PERFORM WRITE_VLINE USING ' ' 23.
PERFORM WRITE_VLINE USING ' ' 51.
PERFORM WRITE_VLINE USING ' ' 1.
PERFORM WRITE_VLINE USING ' ' 102.
FORMAT INTENSIFIED.
WRITE:/24(12) SY-ULINE,
02(80) SY-ULINE,
12(08) SY-ULINE,
52(40) SY-ULINE.
PERFORM WRITE_VLINE USING 'T' 23.
PERFORM WRITE_VLINE USING 'T' 51.
PERFORM WRITE_VLINE USING ' ' 1.
PERFORM WRITE_VLINE USING ' ' 102.
ENDIF.
FORMAT RESET.
IF BDCLD-GROUPID NE LMAPN.
WRITE:/01(102) SPACE COLOR COL_NORMAL.
WRITE: 24(27) BDCLD-GROUPID COLOR COL_KEY INTENSIFIED ON.
LMAPN = BDCLD-GROUPID.
PERFORM WRITE_DATE USING BDCLD-CREDATE.
WRITE: 02(10) DATE1 DD/MM/YYYY COLOR COL_NORMAL ,
13(08) BDCLD-CRETIME USING EDIT MASK '__:__:__'
COLOR COL_NORMAL .
WRITE: 52(12) BDCLD-CREATOR COLOR COL_NORMAL ,
80(24) BDCLD-DESTSYS COLOR COL_NORMAL .
PERFORM WRITE_VLINE USING ' ' 23.
PERFORM WRITE_VLINE USING ' ' 51.
PERFORM WRITE_VLINE USING ' ' 1.
PERFORM WRITE_VLINE USING ' ' 102.
ENDIF.
MTAB-GROUPID = BDCLD-GROUPID.
PERFORM BIM_BERECHTIGUNG USING BIM-ANAL X.
IF SY-SUBRC NE 0.
HIDE: BDCLD, BDCLD#.
EXIT.
ENDIF.
WRITE:/01(102) SY-ULINE.
WRITE:/01(102) SPACE COLOR COL_HEADING INTENSIFIED OFF.
WRITE: 02 'Zeit '(001) COLOR COL_HEADING INTENSIFIED OFF,
11 'Tran'(008) COLOR COL_HEADING INTENSIFIED OFF,
16 'Dynpro'(007) COLOR COL_HEADING INTENSIFIED OFF,
30 'Nachricht'(002) COLOR COL_HEADING INTENSIFIED OFF.
63 DATE1 DD/MM/YYYY.
PERFORM WRITE_VLINE USING 'T' 10.
PERFORM WRITE_VLINE USING 'T' 15.
PERFORM WRITE_VLINE USING 'T' 29.
PERFORM WRITE_VLINE USING 'T' 1.
PERFORM WRITE_VLINE USING 'T' 102.
WRITE: /02(09) SY-ULINE,
11(04) SY-ULINE,
16(13) SY-ULINE,
30(60) SY-ULINE.
PERFORM WRITE_VLINE USING 'T' 10.
PERFORM WRITE_VLINE USING 'T' 15.
PERFORM WRITE_VLINE USING 'T' 29.
PERFORM WRITE_VLINE USING 'T' 1.
PERFORM WRITE_VLINE USING 'T' 102.
FORMAT RESET.
PERFORM LOG_MES.
PERFORM SHOW_MES.
DO 1 TIMES.
WRITE:/01(102) SPACE COLOR COL_NORMAL.
PERFORM WRITE_VLINE USING 'T' 10.
PERFORM WRITE_VLINE USING 'T' 15.
PERFORM WRITE_VLINE USING 'T' 29.
PERFORM WRITE_VLINE USING 'T' 1.
PERFORM WRITE_VLINE USING 'T' 102.
ENDDO.
HIDE: BDCLD, BDCLD#.
EXIT. " protokoll gefunden, bye
ENDIF. " immer das neueste protokoll
ENDLOOP.
IF QFOUND = 0.
RETURN = 324. " keine Protokolle gefunden
ELSE.
PERFORM LAST_LISTLINE.
ENDIF.
LINCT0 = SY-SROWS. "seitengroesse grundliste festhalten
ENDFORM. " show_dirq.
FORM : show_dirm *
FORM SHOW_DIRM.
show directory and message for QUEUE_ID
at line-selection
SHOWTYP = 'DIRM '.
CLEAR: QFOUND, LMAPN.
IF LOG-QUID EQ BDCLD-QID.
QFOUND = QFOUND + 1.
IF QFOUND = 1.
FORMAT COLOR COL_HEADING INTENSIFIED ON.
WRITE:/01(102) SY-ULINE.
WRITE:/24(12) 'Mappenname '(003).
WRITE: 02(11) 'Angelegt '(004),
12(08) ' ',
52(50) 'User '(005).
PERFORM WRITE_VLINE USING ' ' 23.
PERFORM WRITE_VLINE USING ' ' 51.
PERFORM WRITE_VLINE USING ' ' 1.
PERFORM WRITE_VLINE USING ' ' 102.
FORMAT INTENSIFIED.
WRITE:/24(12) SY-ULINE,
02(80) SY-ULINE,
12(08) SY-ULINE,
52(80) SY-ULINE.
PERFORM WRITE_VLINE USING ' ' 23.
PERFORM WRITE_VLINE USING ' ' 51.
PERFORM WRITE_VLINE USING ' ' 1.
PERFORM WRITE_VLINE USING ' ' 102.
ENDIF.
FORMAT RESET.
IF BDCLD-GROUPID NE LMAPN.
WRITE:/01(102) SPACE COLOR COL_NORMAL.
WRITE: 24(27) BDCLD-GROUPID COLOR COL_KEY INTENSIFIED ON.
LMAPN = BDCLD-GROUPID.
PERFORM WRITE_DATE USING BDCLD-CREDATE.
WRITE: 02(10) DATE1 DD/MM/YYYY COLOR COL_NORMAL ,
13(08) BDCLD-CRETIME USING EDIT MASK '__:__:__'
COLOR COL_NORMAL .
WRITE: 52(12) BDCLD-CREATOR COLOR COL_NORMAL ,
80(24) BDCLD-DESTSYS COLOR COL_NORMAL .
PERFORM WRITE_VLINE USING ' ' 23.
PERFORM WRITE_VLINE USING ' ' 51.
PERFORM WRITE_VLINE USING ' ' 1.
PERFORM WRITE_VLINE USING ' ' 102.
ENDIF.
MTAB-GROUPID = BDCLD-GROUPID.
PERFORM BIM_BERECHTIGUNG USING BIM-ANAL X.
IF SY-SUBRC NE 0.
HIDE: BDCLD, BDCLD#.
EXIT.
ENDIF.
WRITE:/01(102) SPACE COLOR COL_HEADING INTENSIFIED OFF.
WRITE: 02 'Zeit '(001) COLOR COL_HEADING INTENSIFIED OFF,
11 'Tran'(008) COLOR COL_HEADING INTENSIFIED OFF,
16 'Dynpro'(007) COLOR COL_HEADING INTENSIFIED OFF,
30 'Nachricht'(002) COLOR COL_HEADING INTENSIFIED OFF.
PERFORM WRITE_VLINE USING ' ' 10.
PERFORM WRITE_VLINE USING ' ' 15.
PERFORM WRITE_VLINE USING ' ' 29.
PERFORM WRITE_VLINE USING ' ' 1.
PERFORM WRITE_VLINE USING ' ' 102.
WRITE: 01(09) SY-ULINE,
11(04) SY-ULINE,
16(13) SY-ULINE,
30(80) SY-ULINE.
PERFORM WRITE_VLINE USING ' ' 10.
PERFORM WRITE_VLINE USING ' ' 15.
PERFORM WRITE_VLINE USING ' ' 29.
PERFORM WRITE_VLINE USING ' ' 1.
PERFORM WRITE_VLINE USING ' ' 102.
FORMAT RESET.
PERFORM LOG_MES.
PERFORM SHOW_MES.
DO 1 TIMES.
WRITE:/01(102) SPACE COLOR COL_NORMAL.
PERFORM WRITE_VLINE USING 'T' 10.
PERFORM WRITE_VLINE USING 'T' 15.
PERFORM WRITE_VLINE USING 'T' 29.
PERFORM WRITE_VLINE USING 'T' 1.
PERFORM WRITE_VLINE USING 'T' 102.
ENDDO.
HIDE: BDCLD, BDCLD#.
ENDIF.
IF QFOUND = 0.
RETURN = 324. " keine Protokolle gefunden
ELSE.
PERFORM LAST_LISTLINE.
ENDIF.
LINCT0 = SY-SROWS. "seitengroesse grundliste festhalten
ENDFORM. " show_dirm.
FORM : show_dire *
FORM SHOW_DIRE.
show directory and message for QUEUE_ID
IF RETURN GT 0.
EXIT.
ENDIF.
SHOWTYP = 'DIRE '.
CLEAR: QFOUND, LMAPN.
LOOP AT BDCLD.
IF LOG-QUID EQ BDCLD-QID.
QFOUND = QFOUND + 1.
IF QFOUND = 1.
FORMAT COLOR COL_HEADING.
WRITE:/01(102) SY-ULINE.
WRITE:/01(102) SPACE.
WRITE: 24(12) 'Mappenname '(003),
02(10) 'Angelegt '(004),
12(08) ' ',
52(50) 'User '(005).
PERFORM WRITE_VLINE USING ' ' 01.
PERFORM WRITE_VLINE USING ' ' 23.
PERFORM WRITE_VLINE USING ' ' 51.
PERFORM WRITE_VLINE USING ' ' 102.
FORMAT INTENSIFIED.
WRITE:/24(12) SY-ULINE,
01(80) SY-ULINE,
12(40) SY-ULINE,
52(80) SY-ULINE.
PERFORM WRITE_VLINE USING ' ' 01.
PERFORM WRITE_VLINE USING ' ' 23.
PERFORM WRITE_VLINE USING ' ' 51.
PERFORM WRITE_VLINE USING ' ' 102.
ENDIF.
FORMAT RESET.
IF BDCLD-GROUPID NE LMAPN.
WRITE:/24(12) BDCLD-GROUPID.
WRITE:/01(102) SPACE COLOR COL_NORMAL.
WRITE: 24(27) BDCLD-GROUPID COLOR COL_KEY INTENSIFIED ON.
LMAPN = BDCLD-GROUPID.
PERFORM WRITE_DATE USING BDCLD-CREDATE.
WRITE: 02(10) DATE1 DD/MM/YYYY COLOR COL_NORMAL,
13(08) BDCLD-CRETIME USING EDIT MASK '__:__:__'
COLOR COL_NORMAL.
PERFORM GET_STAT USING BDCLD-STATE WSTAT.
WRITE: 40(03) WSTAT COLOR COL_NORMAL,
WRITE: 52(12) BDCLD-CREATOR COLOR COL_NORMAL,
80(24) BDCLD-DESTSYS COLOR COL_NORMAL.
PERFORM WRITE_VLINE USING ' ' 01.
PERFORM WRITE_VLINE USING ' ' 23.
PERFORM WRITE_VLINE USING ' ' 51.
PERFORM WRITE_VLINE USING ' ' 102.
WRITE:/01(102) SY-ULINE.
ENDIF.
FORMAT INTENSIFIED.
WRITE:/.
WRITE:/01(102) SPACE COLOR COL_HEADING INTENSIFIED OFF.
WRITE: 02 'Zeit '(001) COLOR COL_HEADING INTENSIFIED OFF,
11 'Tran'(008) COLOR COL_HEADING INTENSIFIED OFF,
16 'Dynpro'(007) COLOR COL_HEADING INTENSIFIED OFF,
30 'Nachricht'(002) COLOR COL_HEADING INTENSIFIED OFF.
PERFORM WRITE_VLINE USING ' ' 01.
PERFORM WRITE_VLINE USING ' ' 10.
PERFORM WRITE_VLINE USING ' ' 15.
PERFORM WRITE_VLINE USING ' ' 29.
PERFORM WRITE_VLINE USING ' ' 102.
FORMAT INTENSIFIED.
WRITE:
/01(09) SY-ULINE,
11(04) SY-ULINE,
16(13) SY-ULINE,
30(80) SY-ULINE.
PERFORM WRITE_VLINE USING ' ' 10.
PERFORM WRITE_VLINE USING ' ' 15. -
Delay to display and run input session in SM35
Hi all,
while uploading BDC for Bank statement or for anything, it is taking so much time to display the log in input session SM35,
also in executing the session in background.
Same thing happens while running payment proposal if F110.
after entering parameters to generate the proposal it is taking more than 4 to 6 hrs and after that to run the payment proposal again 5-6 hrs.
This never used to happen before, i cant understand what is the problem.
Please help me in this,
Regards,,,,I have taken the parameter as a column in select statement and used that column in template to display the parameter values. But it throwing error. i need to display all the parameter values in the output.
-
Total is not getting displayed in the ALV output.
Hi,
Total is not getting displayed in the ALV output.
I m using :REUSE_ALV_BLOCK_LIST_APPEND & REUSE_ALV_BLOCK_LIST_DISPLAY
Are there any issues with it as the same settings are working fine with REUSE_ALV_LIST_DISPLAY
source code:
DATA: layout TYPE slis_layout_alv,
IT_eventS TYPE slis_t_event,
fcat TYPE slis_t_fieldcat_alv WITH HEADER LINE,
rec_fcat TYPE slis_t_fieldcat_alv WITH HEADER LINE.
TYPES: BEGIN OF ty_tab,
belnr TYPE dberchz-belnr,
belzart TYPE dberchz-belzart,
net TYPE dberchz-nettobtr,
END OF ty_tab.
DATA: lt_tab TYPE STANDARD TABLE OF ty_tab.
SELECT belnr belzart nettobtr
FROM dberchz
INTO TABLE lt_tab[]
WHERE belnr eq '000000000001'.
if sy-subrc ne 0.
ENDIF.
* defining layout
layout-colwidth_optimize = 'X'.
layout-def_status = 'X'.
*defning event
*event
*defining field catalog
fcat-col_pos = 1.
fcat-fieldname = 'BELNR'.
fcat-tabname = 'LT_TAB'.
APPEND fcat.
fcat-col_pos = 2.
fcat-fieldname = 'BELZART'.
fcat-tabname = 'LT_TAB'.
APPEND fcat.
fcat-col_pos = 3.
fcat-fieldname = 'NET'.
fcat-tabname = 'LT_TAB'.
fcat-do_sum = 'X'.
APPEND fcat.
*calling alv
CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_INIT'
EXPORTING
i_callback_program = 'YZ_PLR'
* I_CALLBACK_PF_STATUS_SET = ' '
* I_CALLBACK_USER_COMMAND = ' '
* IT_EXCLUDING =
CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_APPEND'
EXPORTING
is_layout = layout
it_fieldcat = fcat[]
i_tabname = 'LT_TAB'
it_events = IT_EVENTS[]
* IT_SORT =
* I_TEXT = ' '
tables
t_outtab = lt_tab[]
* EXCEPTIONS
* PROGRAM_ERROR = 1
* MAXIMUM_OF_APPENDS_REACHED = 2
* OTHERS = 3
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_DISPLAY'
Thanks,
GauravHi
No I don't think, this is my code (based on your code) and it works fine:
TYPE-POOLS SLIS.
DATA: BEGIN OF LT_TAB OCCURS 0,
BELNR LIKE BSEG-BELNR,
GJAHR LIKE BSEG-GJAHR,
WRBTR LIKE BSEG-WRBTR,
WAERS LIKE BKPF-WAERS,
END OF LT_TAB.
DATA: LAYOUT TYPE SLIS_LAYOUT_ALV,
IT_EVENTS TYPE SLIS_T_EVENT,
FCAT TYPE SLIS_T_FIELDCAT_ALV WITH HEADER LINE,
REC_FCAT TYPE SLIS_T_FIELDCAT_ALV WITH HEADER LINE.
START-OF-SELECTION.
FCAT-COL_POS = 1.
FCAT-FIELDNAME = 'BELNR'.
FCAT-TABNAME = 'LT_TAB'.
FCAT-REF_FIELDNAME = 'BELNR'.
FCAT-REF_TABNAME = 'BSEG'.
APPEND FCAT.
FCAT-COL_POS = 2.
FCAT-FIELDNAME = 'GJAHR'.
FCAT-TABNAME = 'LT_TAB'.
FCAT-REF_FIELDNAME = 'GJAHR'.
FCAT-REF_TABNAME = 'BSEG'.
APPEND FCAT.
FCAT-COL_POS = 3.
FCAT-FIELDNAME = 'WRBTR'.
FCAT-TABNAME = 'LT_TAB'.
FCAT-CFIELDNAME = 'WAERS'.
FCAT-REF_FIELDNAME = 'WRBTR'.
FCAT-REF_TABNAME = 'BSEG'.
FCAT-DO_SUM = 'X'.
APPEND FCAT.
FCAT-COL_POS = 4.
FCAT-FIELDNAME = 'WAERS'.
FCAT-TABNAME = 'LT_TAB'.
FCAT-REF_FIELDNAME = 'WAERS'.
FCAT-REF_TABNAME = 'BKPF'.
FCAT-DO_SUM = SPACE.
APPEND FCAT.
SELECT * FROM BSEG INTO CORRESPONDING FIELDS OF TABLE LT_TAB
WHERE BUKRS = 'MAAB'
AND BELNR = '0000000001'.
LT_TAB-WAERS = 'EUR'.
MODIFY LT_TAB FROM LT_TAB TRANSPORTING WAERS WHERE WAERS = SPACE.
*CALLING ALV
CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_INIT'
EXPORTING
I_CALLBACK_PROGRAM = 'ZPROVAMAX5'.
CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_APPEND'
EXPORTING
IS_LAYOUT = LAYOUT
IT_FIELDCAT = FCAT[]
I_TABNAME = 'LT_TAB'
IT_EVENTS = IT_EVENTS[]
TABLES
T_OUTTAB = LT_TAB[].
CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_DISPLAY'.
I've also inserted a currency field
Max
Maybe you are looking for
-
Officejet Pro 8600 Plus cannot print after OS 10.10 SW update
My Officejet Pro 8600 Plus was working just fine with OS 10.9. I got an email from HP that there was updated software for OS 10.10, so I dowloaded & installed it, and now I get gibberish when I try to print anything -- a web page, email, Word docum
-
Replacement Question: Ipod 20G 4th Gen Vs. Ipod 30G 5th Gen
The 20G non-color display Ipod that I owned for 18 months died mysteriously last Sunday. I lifted it out of the charge dock after it fully charged and the click wheel had become completely unresponsive. The video display was fully functional.... but
-
Logic Pro 7 Hybrid Bass plug-in
I've just upgraded from Logic Pro 7 to Logic 8. I've come to load some of my songs to mix in 5.1 and found that some of the plug-ins that I used to key sounds in some of my tracks is no longer there. The GarageBand plug-in Hybrid Bass is gone, and ma
-
Macbook freezing on certain programmes.
So my Macbook Pro is freezing when I play games such as "League of Legends", depending whether its full screen or windowed it freezes, so if its on full screen at the time I have to restart, but if its windowed I can close and reopen. My Mac sounds l
-
Getting a fixed header for Mobile site?
Hi, I am trying to set up a fixed header for my mobile site. I have tried multiple things and keep running into the same issue. Although I haven't tried to view on another mobile platform other than iOS 8.1, but the issue that I am having is my addre