RFBIBL00  batch input background process

Hi all ,
I am using rfbibl00 to create batch input session for FI  data upload .
My poblem is Session can b pricessd successflly in forground . But when I submit it to back ground ,
it goes into error .
For every 900 line items one document no is generatd in the program .
So , Suppose there is more than 900 line items( say 1500 ) in text file ,
In back ground , session is processed correctly for first 900 line items and one document no is generated .
But for next line items it goes into error saying field RF05A-newbk does not exist for screen sapmf05A .
Every 900 line items it requires human intervention to prss ENTER in mode E .
It should automatically process all the records in background .
Can any body help me ?
Thanks & Regards ,
SA

I don't understand.
At the start of the code I am moving '/' to every field within BBKPF and BBSEG.
I then move the data to the appropiate fields and write the records. When I look
at the text file all the fields with no data in them contain '/'.
Is there something I am missing ????
Andy

Similar Messages

  • Issue with RFBIBL00 batch input processing

    Hello ABAP Experts,
    I am having issue with a speed of batch input session processing.  If you can please help me resolve the issue.
    I have a requirement to post liquidation document to clear open vendor down payment items and then to clear vendor invoice with liquidation.  I have created a custom program to address this requirement where it uses the SAP program and Call Transaction.
    For liquidation document posting, I am using the program RFBIBL00.  The custom program has steps:
    1.  Submit RFBIBL00 via job to create batch input session
    2.  Close job
    3.  Submit RSBDCSUB via job to process batch input session
    4.  Close job
    5.  Wait for 15 seconds
    6.  Read job log to get liquidation document number
    7.  If no document posted then display error
    The issue is when the job log is read it says u2018Session 10zrsbdcsubxxxxxxx is being processed by user   in mode   on serveru2019 and there is no error message or no document number with message number 312.  So the program displays error message, stops and cannot perform the second step. If I check in the system after a couple of minutes I find the document posted. I also increased the wait time.  But the first record processing always takes longer and the program finds as a failure.  The program can process next several records with success.
    I am looking for expert help if you please suggest how to resolve this.
    Thanks & Regards.
    Yashasvi

    Hi,
    Have you tried calling FM DEQUEUE_ALL before/after schedulling job?
    Gouri.

  • RFBIBL00 - Batch Input Error

    Hello Friends,
    I am using RFBIBL00 to create GL postings. I have used this program successfully before and never had the following issue:
    RFBIBL00 creates a batch and when the batch is processed I get the following error: Field COBL-PRODPER does not exist in the screen SAPLKACB 0002. I my test, I was trying to create a basic document just with one simple debit and credit entry. Could this be a config issue? Any input/help will be greatly appreciated.
    Thanks,
    Sam

    well, it worked. i was instantiating the batch input structures but somehow some fields including prodper were not affected (maybe because they were extended fields?).
    anyways, rob - your post made me to think that prodper is going into the batch input process without / (no-data character) which was correct!
    thanks!

  • Problems with a session of batch input - In processing

    Hello!
    I have a problem with a depreciation posting Session (AFAB). User has stoped the process of session and now the status is 'In Processing' and we can't run it anymore...
    ¿How I can process this Session?
    I've tried to delete the session and re-run the depreciation posting, but it's not working.
    I've tried to delete in TABA table the line of this period, but it's not working.
    I've tried to suicide me, but... it's not working.
    I'll try to kill the user, I hope that It will work.
    Can you help me? Please.
    Thanks a lot!!!

    Dear Jorge,
    In SM35 analyze your session.
    If it was processed in background go to transaction SM37. Else, you can proceed in SM35 itself.
    Regards,
    Naveen.

  • Batch Input data processed.

    Hi all,
    can I get information about BI session processed by user on SM35 respect to fields and their values using a my custom report?
    About fields and thei values I mean for example values for vkorg, vtweg and spart using VA01 and so on.

    hi
    Session Method is one way of performing BDC. In this process, the data which is coming from an external file is processed and then put into a session. To process the session, we need to use SM35 transaction code. We can from there process it in foreground or background mode.
    To do BDC for a transaction, we need to perform the recording from tcode SHDB and then create a program using the recording.
    During the recording, we give test values which we normally give.
    For example, in va01 if we give plant as a001 during creating transaction..the same value should be given during recording.
    Regards,
    Vishwa.

  • SaveAs in Batch Input Recorder

    Hi! I'm Cherrie, a newbie. Is it possible to incorporate exporting attached file of an email message to Batch Input Recorder? How?
    Trying to save the file to a local pc automatically as batch input recorder process. However, it always stops where export button is to be clicked as before SaveAs dialog shows.
    Please help.

    Hi,
    It's not possible to save file to local pc if you run your program in background.
    Krzys

  • Batch input session for FI postings

    At the time of batch input session processing for FI postings (Transaction FB01), session is terminated due to following error message -
    Message no. 00349
    Field BSEG-PRZNR. does not exist in the screen SAPMF05A 0302
    Batch session has been created using LSMW for data upload. As per field status of the GL account, some of the line items may or may not require an entry for particular field. How can we ignore this error during batch input session when a field is not required to be input for a particular GL account. However, flat file format contains this field because it is required for some of the GL accounts.
    Let me know if you need more information / example. I desperately need a solution.
    Regards,

    Dear Abhilasha,
    Lets assume you have two gl accounts gl1 and gl2. gl1 requires this field to be entered, whereas gl2 does not allow you to enter value.
    In this case, modify your logic as below:
    I believe you can write code in LSMW as well.
    However, if you are using BDC you can write logic as follows:
    if gl_account_field = gl1.
      PERFORM bdc_field       USING 'BSEG-PRZNR'
                                           value.
    endif.
    Hope this will help.
    Regards,
    Naveen.

  • Batch Input - Pricing isn't redetermined

    Hi everybody.
    I have a problem with a program that generates a batch input folder that will update a sales order.
    But when we process the batch input session, it correctly updates the data but the pricing isn't redetermine.
    Does anybody face something like this ?
    I have tried to record again the transaction but still, pricing isn't redetermined.
    How can i force that ?

    Here's some more explanation about the program.
    1 - Specific program creates a batch input session.
    2 - Batch input when processed will create an order with reference to another order.
    3 - In the Order created through the batch input, pricing isn't correct.
    4 - To have the correct pricing we need to do manually an update (sales order / conditions tab / update)
    Thanks for your help

  • Batch Input error in background in fb05

    Hi All
    I am trying to clear vendor open  items for document numbers from BSIK table.
    i am doing this using fb05 transaction, checking the 'post with clearing' option.
    The program creates a batch input session.
    When i process the session in foreground, the vendor document is cleared and a new clearing document is posted.
    However, if i try to process the session in background , we get the error "Difference too large for clearing". The error is shown in program SAPMF05A and screen number 700.  Whereas, my recording does not have this screen number .
    Even when i anlyze the session screen flow, i do not see this screen number.
    Any pointer on the issue shall be of great help.
    Thanks
    Pankaj

    Hi
    thanks for the pointer.
    I agree that we get this error if the items are not selected.
    Could it be that the items are activated by default in foreground mode , and deactivated in the background mode?
    Moreover, could you please give some more info about " the std bi RFBIBL00, it supports the trx FB05" ?
    Thanks
    Pankaj

  • Batch input session to FB01 using standard program RFBIBL00

    Hi all,
    I am creating a batch input session using the standard program RFBIBL00 to simulate transaction FB01.
    My problem is when I process the "batch input session" (using transaction SM35), this finish ok, but in the log I am retrieving the following message:
      "Field BSEG-DMBTR. does not exist in the screen SAPMF05A 0300"
    This is a success message and the document is created ok,and the field DMBTR is informed ok.
    Has somebody some idea?.
    Thanks so much in advance for any answer.

    Hi gundam,
    1. Or is there any method to wait here until the process is completed before further processing?
    There is no such direct method to wait.
    2. Immediately after submitting in background,
       we cannot wait
      neither can we LOOP and go on detecting
      whether the b/g process has completed or not !
    3. To over come such problems,
      we have to use another technique.
    4. we have to submit another
       job which will get triggered
       on event SAP_END_OF_JOB
       ie. when the original job will finish,
      our new job will AUTOMATICALLY get triggered,
    5. This new job / program
       will do the FURTHER actions !
    regards,
    amit m.

  • RFBIBL00 for FB01 - BATCH INPUT ERROR

    Hi,
    When am trying to post from foreground i found an error
    "Field DKACB-XERGO. does not exist in the screen SAPLKACB-0002"
    such errors come for only certain GL account, could you provide me a solution?

    Hi Dear,
    Call Rfbibl00 in you program and submit your structure to rfbibl00. Here is the sample code....c how i have submitted in back ground i have given commenting in code it will b easier for you.
    Still issues feel free to ask.
    Reward for program
    DATA :w_t001 LIKE t001,
          w_gjahr LIKE bkpf-gjahr,
          w_poper LIKE t009b-poper,
          BEGIN OF it_input1 OCCURS 0,
          data(10000),
          END OF it_input1,
          separator(1) TYPE c VALUE ';',
          input_line(10000),
          count TYPE i,
          i_lines TYPE i,
            BEGIN OF it_input OCCURS 0,
            ind(1),                    " indicator for feild
            bldat(8),                  " DOC DATE
            blart(2),                  " DOC TYPE
            bukrs(4),                  " COMPANY CODE
            budat(8),                  " POSTING DATE
            waers(5),                  " CURRENCY
            xblnr(16),                 " HEADER REF
            bktxt(25),                 " HEADER TXT
            newbs(2),                  " POSTING KEY
            newko(17),                 " ACCOUNT
            newum(1),                  " SPL GL INDICATOR
            wrbtr(13),                 " AMOUNT IN FOR CURRENCY
            dmbtr(13),                 " AMOUNT IN LOCAL CURRENCY
            zterm(4),                  " PAYAMENT TERMS
            zfbdt(10),                 " BASE LINE DATE
            wt_wit(2),                 " WITH TAXCODE
            wt_qs(15),                 " WITH TAXCODE
            wt_qb(15),                 " WITH TAXAMOUNT
            mwskz(2),                  " TAXCODE
            bupla(4),                  " BUSINESS PLACE
            newbk(4),                  " LINE ITEM COMAPNY CODE
            kostl(10),                 " COSTCENTER
            aufnr(12),                 " INTERNAL ORDER
            prctr(10),                 " PROFIT CENTER
            pernr(8),                  " PERSONAL NUMBER
            zuonr(18),                 " ASSIGNMENT
            xref1(12),                                          " REF1
            xref2(12),                                          " REF2
            xref3(20),                                          " REF3
            sgtxt(50),                 " LINE TEXT
      END OF it_input,
       it_tmp_input LIKE it_input OCCURS 0 WITH HEADER LINE.
    DATA : file TYPE string,
           file1 TYPE string.
    path on which error and complete directories are placed
    DATA : w_path_err(100) TYPE c VALUE '\usr\sap\DEV\interfaces\ERROR\',
           w_path_comp(100) TYPE c VALUE '\usr\sap\DEV\interfaces\COMPLETE\',
           w_path_capinv(200) TYPE c VALUE '\usr\sap\DEV\interfaces\IN\SETDDN\',
           w_path_capinv1(200) TYPE c,   "contains the path of the file in the its original directory eg SETDDN
           w_path_capinv2(200) TYPE c,   "contains the path of the error file in the error directory eg ERROR
           w_path_capinv3(200) TYPE c.   "contains the path of the file in the complete directory eg COMPLETE
    type declaration for headerref
    TYPES : BEGIN OF ty_input_err,
            xblnr(16),                 " HEADER REF
            item_no(4),
            err_text(500),
            END OF ty_input_err.
    DATA : it_input_err TYPE STANDARD TABLE OF ty_input_err,
           wa_input_err LIKE LINE OF it_input_err.
    variables for validations
    DATA : w_post TYPE c,
           w_xblnr TYPE bkpf-xblnr,
           w_wrbtr TYPE i,
           w_wrbtr1 TYPE i,
           w_wrbtr2 TYPE i,
           w_newko(10) TYPE c,
           w_count1 TYPE n.
    DATA :
           w_path LIKE rlgrap-filename,
           w_file LIKE rlgrap-filename,
           w_dir LIKE  rlgrap-filename,
           w_dir1 LIKE epsf-epsdirnam,
           w_file1 LIKE  epsf-epsfilnam,
           w_flag TYPE i,
           w_budat TYPE budat,
           w_flag_s TYPE c,
           w_file_comp  LIKE rlgrap-filename.
    DATA : BEGIN OF it_file OCCURS 0.
            INCLUDE STRUCTURE  epsfili.
    DATA:  END OF it_file.
    FIELD-SYMBOLS: <fs>.
    DATA: BEGIN OF bdcdata OCCURS 100.
            INCLUDE STRUCTURE bdcdata.
    DATA: END OF bdcdata.
    DATA : BEGIN OF it_data OCCURS 0,
             f1(10000),
           END OF it_data.
    DATA : wa_bgr00 LIKE bgr00,
           wa_bbkpf LIKE bbkpf,
           wa_bbkpf1 LIKE bbkpf,
           wa_bbseg LIKE bbseg,
           w_param_1 LIKE  filename-fileintern,
           x_file(500),
           w_move_file LIKE  epsf-epsfilnam,
           w_from_dir  LIKE epsf-epsdirnam.
    type declaration for validations
    TYPES : BEGIN OF ty_blart,
            blart TYPE t003-blart,
            END OF ty_blart.
    TYPES : BEGIN OF ty_xblnr,
            xblnr TYPE bkpf-xblnr,
            END OF ty_xblnr.
    TYPES : BEGIN OF ty_mwskz,
            mwskz TYPE t007a-mwskz,
            END OF ty_mwskz.
    TYPES : BEGIN OF ty_qsskz,
            qsskz TYPE t059q-qsskz,
            END OF ty_qsskz.
    TYPES : BEGIN OF ty_zterm,
            zterm TYPE t052-zterm,
            END OF ty_zterm.
    TYPES : BEGIN OF ty_bschl,
            bschl TYPE tbsl-bschl,
            END OF ty_bschl.
    TYPES : BEGIN OF ty_umskz,
            umskz TYPE t074u-umskz,
            END OF ty_umskz.
    TYPES : BEGIN OF ty_prctr,
            prctr TYPE cepc-prctr,
            END OF ty_prctr.
    TYPES : BEGIN OF ty_kostl,
            kostl TYPE csks-kostl,
            END OF ty_kostl.
    TYPES : BEGIN OF ty_branch,
            branch TYPE j_1bbranch-branch,
            END OF ty_branch.
    TYPES : BEGIN OF ty_seccode,
            seccode TYPE seccode-seccode,
            END OF ty_seccode.
    TYPES : BEGIN OF ty_tbsl,
            bschl TYPE tbsl-bschl,
            shkzg TYPE tbsl-shkzg,
            END OF ty_tbsl.
    TYPES : BEGIN OF ty_aufnr,
            aufnr TYPE aufk-aufnr,
            END OF ty_aufnr.
    TYPES : BEGIN OF ty_pernr,
            pernr TYPE pa0001-pernr,
            END OF ty_pernr.
    TYPES : BEGIN OF ty_ska1,
            saknr TYPE ska1-saknr,
            END OF ty_ska1.
    TYPES : BEGIN OF ty_lfa1,
            lifnr TYPE lfb1-lifnr,
            bukrs TYPE lfb1-bukrs,
            END OF ty_lfa1.
    internal table declaration for validation
    DATA : it_blart TYPE STANDARD TABLE OF ty_blart,
           it_mwskz TYPE STANDARD TABLE OF ty_mwskz,
           it_umskz TYPE STANDARD TABLE OF ty_umskz,
           it_xblnr TYPE STANDARD TABLE OF ty_xblnr,
           it_qsskz TYPE STANDARD TABLE OF ty_qsskz,
           it_zterm TYPE STANDARD TABLE OF ty_zterm,
           it_bschl TYPE STANDARD TABLE OF ty_bschl,
           it_prctr TYPE STANDARD TABLE OF ty_prctr,
           it_kostl TYPE STANDARD TABLE OF ty_kostl,
           it_branch TYPE STANDARD TABLE OF ty_branch,
           it_seccode TYPE STANDARD TABLE OF ty_seccode,
           it_tbsl  TYPE STANDARD TABLE OF ty_tbsl,
           it_aufnr TYPE STANDARD TABLE OF ty_aufnr,
           it_pernr TYPE STANDARD TABLE OF ty_pernr,
           it_ska1 TYPE STANDARD TABLE OF ty_ska1,
           it_lifnr TYPE STANDARD TABLE OF ty_lfa1.
    DATA : wa_it_tbsl LIKE LINE OF it_tbsl.
    DATA : w_date TYPE sy-datum,
           w_check TYPE c ,
           w_item_no TYPE i.
    CONSTANTS : c_under TYPE c VALUE '_',
                c_ext(4) TYPE c VALUE '.txt'.
    Input file
    SELECTION-SCREEN BEGIN OF BLOCK inp WITH FRAME TITLE text-001.
    PARAMETERS :
                 pr_serv RADIOBUTTON GROUP abc DEFAULT 'X',
                 pr_sfile TYPE  filename-fileintern,
                 pr_lok RADIOBUTTON GROUP abc,
                 pr_lfile  TYPE filename-fileextern.
    SELECTION-SCREEN END OF BLOCK inp.
    --- output
    SELECTION-SCREEN BEGIN OF BLOCK out WITH FRAME TITLE text-002.
    PARAMETERS : pr_group LIKE bgr00-group OBLIGATORY DEFAULT '1000EXPENSE',     " batch input structure for sessiondata
                 pr_xkeep LIKE bgr00-xkeep DEFAULT 'X' NO-DISPLAY,
                 pr_max(4) TYPE n DEFAULT '8000',
                 callmode    LIKE rfpdo-rfbifunct ,        " Function for Generating Posting
                 pr_nodta LIKE bgr00-nodata DEFAULT '/' NO-DISPLAY,
                 pr_out  LIKE rlgrap-filename,
                 pr_err LIKE rlgrap-filename.
    SELECTION-SCREEN END OF BLOCK out.
    Company code and currency
    SELECTION-SCREEN BEGIN OF BLOCK def WITH FRAME TITLE text-003.
    PARAMETERS : pr_bukrs LIKE t001-bukrs,
                 pr_waers LIKE bkpf-waers.
    SELECTION-SCREEN END OF BLOCK def.
    Read file from server
    PERFORM f001_upload_file.
    *&      Form  create_doc
          text
    -->  p1        text
    <--  p2        text
    FORM f003_create_doc.
      DATA : l_count TYPE i.
      DATA : w_session TYPE i.
      CLEAR w_flag_s.
      CLEAR l_count.
      LOOP AT it_input.
        IF l_count = 0 AND w_flag_s NE 'X'.
          REFRESH it_data.
        ENDIF.
    *Commented code for background processing
        IF it_data[] IS INITIAL.
          PERFORM bdc_bgr00.
          IF NOT w_session IS INITIAL.
            APPEND wa_bbkpf1 TO it_data.
            APPEND it_data.
            MOVE 'X' TO w_flag_s.
          ENDIF.
        ENDIF.
        IF NOT it_input-ind IS INITIAL.
          ADD 1 TO l_count.
          PERFORM header_record.
          PERFORM item_record.
          CLEAR w_flag_s.
        ELSE.
          PERFORM item_record.
        ENDIF.
        IF l_count > 18 .
          PERFORM save_on_server.
          PERFORM post_document.
          ADD 1 TO w_session.
          l_count = 0.
       REFRESH it_data.
        ENDIF.
      ENDLOOP.
      IF NOT it_data[] IS INITIAL.
        PERFORM save_on_server.
        PERFORM post_document.
      ENDIF.
    *moving the file name to temporary variable.
      CONCATENATE  w_path_comp it_file-name INTO w_path_capinv3.
      OPEN DATASET w_path_capinv3 FOR OUTPUT IN TEXT MODE ENCODING DEFAULT.
    *w_path_capinv2 contains the path of the error file.
    *so all of the content of it_input is tranfered to file which is stored in the error.
      LOOP AT it_input.
        TRANSFER it_input TO w_path_capinv3 .
        IF sy-subrc NE 0.
          MESSAGE i001(mg) WITH w_path_capinv3 .    " error writing to sequential file
          MESSAGE a099(mg).                         " processing terminated
        ENDIF.
      ENDLOOP.
      CLOSE DATASET w_path_capinv3.
      CLEAR  w_path_capinv3.
    *After successful posting of the file that file is deleted form its original directory.
      CONCATENATE w_path_capinv it_file-name INTO w_path_capinv1.
      DELETE DATASET w_path_capinv1.
      CLEAR w_path_capinv1.
    -------------- save file on appl. server -----------------
    perform save_on_server.
    -------------- call RFBIBL00 -----------------------------
    perform call_rfbibl00.
    ENDFORM.                    " create_doc
    *&      Form  header_record
          text
    -->  p1        text
    <--  p2        text
    FORM header_record.
      PERFORM fill_in_nodata_character CHANGING wa_bbkpf.
      wa_bbkpf-stype = '1'.
      wa_bbkpf-tcode = 'FB01'.
    Check the file is for the valid company code.
      SELECT SINGLE * INTO w_t001 FROM t001
          WHERE bukrs EQ pr_bukrs.
      IF  sy-subrc NE 0.
        MESSAGE a899 WITH text-021  pr_bukrs.
      ENDIF.
    Determine period
      CALL FUNCTION 'FI_PERIOD_DETERMINE'
        EXPORTING
          i_budat        = sy-datum
          i_bukrs        = pr_bukrs
        IMPORTING
          e_gjahr        = w_gjahr
          e_poper        = w_poper
        EXCEPTIONS
          fiscal_year    = 1
          period         = 2
          period_version = 3
          posting_period = 4
          special_period = 5
          version        = 6
          posting_date   = 7
          OTHERS         = 8.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
      wa_bbkpf-bukrs = pr_bukrs.
    Document type
      IF NOT it_input-blart IS INITIAL.
        wa_bbkpf-blart = it_input-blart.
      ENDIF.
    Document date and Posting date.
      IF NOT it_input-budat IS INITIAL.
        wa_bbkpf-budat = it_input-budat.
      ENDIF.
    *new changes for background.
      MOVE it_input-budat TO w_budat.
    *end change.
      IF NOT it_input-bldat IS INITIAL.
        wa_bbkpf-bldat = it_input-bldat.
      ENDIF.
    Reference document number
      IF NOT it_input-xblnr IS INITIAL.
        wa_bbkpf-xblnr = it_input-xblnr.
      ENDIF.
    Currency
      wa_bbkpf-waers = pr_waers.
    wa_bbkpf-kursf = it_input-kursf.
      IF NOT it_input-bktxt IS INITIAL.
        wa_bbkpf-bktxt = it_input-bktxt.
      ENDIF.
      APPEND wa_bbkpf TO it_data.
      MOVE wa_bbkpf TO wa_bbkpf1.
    ENDFORM.                    " header_record
    *&      Form  item_record
          text
    -->  p1        text
    <--  p2        text
    FORM item_record.
    Fill BBSEG  with no data character .
      PERFORM fill_in_nodata_character CHANGING wa_bbseg.
      wa_bbseg-stype = '2'.
      wa_bbseg-tbnam = 'BBSEG'.
      IF NOT it_input-newbs IS INITIAL.
        wa_bbseg-newbs = it_input-newbs.
      ENDIF.
      IF NOT it_input-newko IS INITIAL.
        wa_bbseg-newko = it_input-newko.
      ENDIF.
      IF NOT it_input-newum IS INITIAL.
        wa_bbseg-newum = it_input-newum.
      ENDIF.
      IF NOT it_input-wrbtr IS INITIAL.
        wa_bbseg-wrbtr = it_input-wrbtr.
      ENDIF.
      IF NOT it_input-dmbtr IS INITIAL.
        wa_bbseg-dmbtr = it_input-dmbtr.
      ENDIF.
      IF NOT it_input-zterm IS INITIAL.
        wa_bbseg-zterm = it_input-zterm.
      ENDIF.
    IF NOT it_input-zfbdt IS INITIAL.
       wa_bbseg-zfbdt = it_input-zfbdt.
    ENDIF.
      wa_bbseg-zfbdt = w_budat.
      IF NOT it_input-wt_wit IS INITIAL.
        wa_bbseg-qsskz = it_input-wt_wit.
      ENDIF.
      IF NOT it_input-wt_qs IS INITIAL.
        wa_bbseg-qsshb = it_input-wt_qs.
      ENDIF.
      IF NOT it_input-wt_qb IS INITIAL.
        wa_bbseg-qsfbt = it_input-wt_qb.
      ENDIF.
      IF NOT it_input-mwskz IS INITIAL.
        wa_bbseg-mwskz = it_input-mwskz.
      ENDIF.
      IF NOT it_input-bupla IS INITIAL.
        wa_bbseg-bupla = it_input-bupla.
      ENDIF.
      IF it_input-ind IS INITIAL AND NOT it_input-newbk IS INITIAL.
        wa_bbseg-newbk =  it_input-newbk.
      ENDIF.
      IF NOT it_input-kostl IS INITIAL.
        wa_bbseg-kostl = it_input-kostl.
      ENDIF.
      IF NOT it_input-aufnr IS INITIAL.
        wa_bbseg-aufnr = it_input-aufnr.
      ENDIF.
    Changes for background processing
      IF it_input-newbs NE '34' AND it_input-newbs NE '24'.
        IF NOT it_input-prctr IS INITIAL.
          wa_bbseg-prctr = it_input-prctr.
        ENDIF.
      ENDIF.
    end of changes.
      IF NOT it_input-pernr IS INITIAL.
        wa_bbseg-pernr = it_input-pernr.
      ENDIF.
      IF NOT it_input-zuonr IS INITIAL.
        wa_bbseg-zuonr = it_input-zuonr.
      ENDIF.
      IF NOT it_input-xref1 IS INITIAL.
        wa_bbseg-xref1 = it_input-xref1.
      ENDIF.
      IF NOT it_input-xref2 IS INITIAL.
        wa_bbseg-xref2 = it_input-xref2.
      ENDIF.
      IF NOT it_input-xref3 IS INITIAL.
        wa_bbseg-xref3 = it_input-xref3.
      ENDIF.
      IF NOT it_input-wrbtr IS INITIAL.
        wa_bbseg-sgtxt = it_input-sgtxt.
      ENDIF.
      APPEND wa_bbseg TO it_data.
    ENDFORM.                    " item_record
    *&      Form  post_document
          text
    -->  p1        text
    <--  p2        text
    FORM post_document.
      PERFORM call_rfbibl00.
    ENDFORM.                    " post_document
    *&      Form  upload_file
          text
    -->  p1        text
    <--  p2        text
    FORM f001_upload_file.
      IF pr_serv = 'X'.
        MOVE '*' TO w_param_1.
       CONCATENATE sy-datum '_' '*' INTO w_param_1.
        PERFORM get_file_name USING pr_sfile w_param_1.
                             CHANGING x_file.
        LOOP AT it_file WHERE name CP w_file1.
          CLEAR : x_file, w_path,
                  w_move_file, w_from_dir.
          REFRESH : it_input,
                    it_input_err.
       IF w_flag IS INITIAL.
          CONCATENATE w_dir it_file-name INTO x_file.
          CONDENSE  x_file.
    TO Move file from sever for backup storing the file name and path
          w_path = x_file.
          CALL FUNCTION 'TRINT_SPLIT_FILE_AND_PATH'
            EXPORTING
              full_name     = x_file
            IMPORTING
              stripped_name = w_move_file
              file_path     = w_from_dir
            EXCEPTIONS
              x_error       = 1
              OTHERS        = 2.
          IF sy-subrc <> 0.
            MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                    WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
          ENDIF.
          PERFORM read_file TABLES it_input
                            USING  x_file.
          PERFORM next_steps.
          CLEAR it_input_err.
          REFRESH it_input.
        ENDLOOP.
      ELSE.
        DATA : w_string TYPE string.
        w_string = pr_lfile.
        CALL FUNCTION 'GUI_UPLOAD'
          EXPORTING
           filename                      = w_string
           filetype                      = 'ASC'
        HAS_FIELD_SEPARATOR           = 'X'
          TABLES
            data_tab                      = it_input1
         EXCEPTIONS
           file_open_error               = 1
           file_read_error               = 2
           no_batch                      = 3
           gui_refuse_filetransfer       = 4
           invalid_type                  = 5
           no_authority                  = 6
           unknown_error                 = 7
           bad_data_format               = 8
           header_not_allowed            = 9
           separator_not_allowed         = 10
           header_too_long               = 11
           unknown_dp_error              = 12
           access_denied                 = 13
           dp_out_of_memory              = 14
           disk_full                     = 15
           dp_timeout                    = 16
           OTHERS                        = 17
        IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
        ENDIF.
        LOOP AT it_input1 INTO input_line.
          CLEAR: it_input, count.
          DO.
            ADD 1 TO count.
            ASSIGN COMPONENT count OF STRUCTURE it_input TO <fs>.
            IF sy-subrc = 0.
              SPLIT input_line AT separator INTO <fs> input_line.
            ELSE.
              EXIT.
            ENDIF.
          ENDDO.
          APPEND it_input.
        ENDLOOP.
        PERFORM next_steps.
        CLEAR it_input_err.
        REFRESH it_input.
      ENDIF.
    ENDFORM.                    " upload_file
    *&      Form  bdc_header
          text
    *&      Form  bdc_dynpro
          text
         -->P_0956   text
         -->P_0957   text
    FORM bdc_dynpro USING    program dynpro.
      CLEAR bdcdata.
      bdcdata-program  = program.
      bdcdata-dynpro   = dynpro.
      bdcdata-dynbegin = 'X'.
      APPEND bdcdata.
    ENDFORM.                    " bdc_dynpro
    *&      Form  bdc_field
          text
         -->P_0961   text
         -->P_0962   text
    FORM bdc_field USING   fnam fval.
      CLEAR bdcdata.
      bdcdata-fnam = fnam.
      bdcdata-fval = fval.
      IF bdcdata-fval NE space.
        APPEND bdcdata.
      ENDIF.
    ENDFORM.                    " bdc_field
    *&      Form  bdc_items
          text
    *&      Form  fill_in_nodata_character
          text
         <--P_WA_BBKPF  text
    FORM fill_in_nodata_character CHANGING p_struc.
      FIELD-SYMBOLS: <nodata_field>.
      DATA: num TYPE i.
      DO.
        ADD 1 TO num.
        ASSIGN COMPONENT num OF STRUCTURE p_struc TO <nodata_field>.
        IF sy-subrc = 0.
          <nodata_field> = pr_nodta.
        ELSE.
          EXIT.
        ENDIF.
      ENDDO.
    ENDFORM.                    " fill_in_nodata_character
    *&      Form  bdc_bgr00
          text
    -->  p1        text
    <--  p2        text
    FORM bdc_bgr00.
      PERFORM fill_in_nodata_character CHANGING wa_bgr00.
      wa_bgr00-stype = '0'.
      wa_bgr00-group = pr_group.
      wa_bgr00-mandt = sy-mandt.
      wa_bgr00-usnam = sy-uname.
      wa_bgr00-start = sy-datum.
      wa_bgr00-xkeep = pr_xkeep.
      APPEND wa_bgr00 TO it_data.
    ENDFORM.                                                    " bdc_bgr00
    *&      Form  save_on_server
          text
    -->  p1        text
    <--  p2        text
    FORM save_on_server.
      MOVE sy-datum TO w_date.
      CLEAR w_file_comp.
      w_file_comp = pr_out.
      CONCATENATE w_path_comp pr_out c_under w_date c_ext INTO pr_out.
      OPEN DATASET pr_out FOR OUTPUT IN TEXT MODE ENCODING DEFAULT.
      LOOP AT it_data.
        TRANSFER it_data TO pr_out.
        IF sy-subrc NE 0.
          MESSAGE i001(mg) WITH pr_out.  " error writing to sequential file
          MESSAGE a099(mg).              " processing terminated
        ENDIF.
      ENDLOOP.
      CLOSE DATASET pr_out.
      FREE it_data.
    ENDFORM.                    " save_on_server
    *&      Form  call_rfbibl00
          text
    -->  p1        text
    <--  p2        text
    FORM call_rfbibl00.
    Submit file after mapping the data to RFBIBL00
      SUBMIT rfbibl00 WITH ds_name = pr_out
                       WITH callmode = callmode
                       WITH xlog = 'X'
                       WITH max_comm = pr_max
                       WITH pa_xprot = 'X'
                       AND RETURN.
      pr_out = w_file_comp.
    ENDFORM.                    " call_rfbibl00
    *&      Form  get_file_name
          text
         -->P_P_SFILE  text
         -->P_W_PARAM_1  text
    FORM get_file_name USING    p_sfile
                                w_param_1.
                               CHANGING x_file.
      CALL FUNCTION 'FILE_GET_NAME'
        EXPORTING
          client           = sy-mandt
          logical_filename = p_sfile
          parameter_1      = w_param_1
        IMPORTING
          file_name        = x_file
        EXCEPTIONS
          file_not_found   = 1
          OTHERS           = 2.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
      w_path = x_file.
      CALL FUNCTION 'TRINT_SPLIT_FILE_AND_PATH'
        EXPORTING
          full_name     = w_path
        IMPORTING
          stripped_name = w_file
          file_path     = w_dir
        EXCEPTIONS
          x_error       = 1
          OTHERS        = 2.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
      w_dir1 = w_dir.
      w_file1 = w_file.
      CALL FUNCTION 'EPS_GET_DIRECTORY_LISTING'
        EXPORTING
          dir_name               = w_dir1
          file_mask              = w_file1
        TABLES
          dir_list               = it_file
        EXCEPTIONS
          invalid_eps_subdir     = 1
          sapgparam_failed       = 2
          build_directory_failed = 3
          no_authorization       = 4
          read_directory_failed  = 5
          too_many_read_errors   = 6
          empty_directory_list   = 7
          OTHERS                 = 8.
      IF sy-subrc <> 0.
        WRITE : / text-022.
      ENDIF.
      LOOP AT it_file WHERE name CP w_file1.
        IF w_flag IS INITIAL.
          CONCATENATE w_dir it_file-name INTO x_file.
          CONDENSE  x_file.
          w_flag = 1.
        ELSE.
          EXIT.
        ENDIF.
      ENDLOOP.
    ENDFORM.                    " get_file_name
    *&      Form  read_file
          text
         -->P_X_FILE  text
    FORM read_file  TABLES it_tab
                    USING  x_file.
      OPEN DATASET x_file FOR INPUT IN TEXT MODE ENCODING DEFAULT.
      IF sy-subrc NE 0.
        WRITE : / text-023.
      ELSE.
        DO.
          READ DATASET x_file INTO input_line.
          IF sy-subrc = 0.
            CLEAR: it_input, count.
            DO.
              ADD 1 TO count.
              ASSIGN COMPONENT count OF STRUCTURE it_tab TO <fs>.
              IF sy-subrc = 0.
                SPLIT input_line AT separator INTO <fs> input_line.
              ELSE.
                EXIT.
              ENDIF.
            ENDDO.
            APPEND it_tab.
          ELSE.
            EXIT.
          ENDIF.
        ENDDO.
      ENDIF.
      CLOSE DATASET x_file.
    ENDFORM.                    " read_file
    *&      Form  validate
          text
    -->  p1        text
    <--  p2        text
    FORM  f002_validate .
      SELECT blart
      FROM t003
      INTO TABLE it_blart.
      IF sy-subrc NE 0.
        CLEAR  it_blart.
      ENDIF.
      SELECT saknr
      FROM ska1
      INTO TABLE it_ska1.
      IF sy-subrc NE 0.
        CLEAR it_ska1.
      ENDIF.
      SELECT lifnr
      FROM lfa1
      INTO TABLE it_lifnr.
      IF sy-subrc NE 0.
        CLEAR it_lifnr.
      ENDIF.
      SELECT mwskz
      FROM t007a
      INTO TABLE it_mwskz.
      IF sy-subrc NE 0.
        CLEAR  it_mwskz.
      ENDIF.
      SELECT qsskz
      FROM t059q
      INTO TABLE it_qsskz.
      IF sy-subrc NE 0.
        CLEAR  it_qsskz.
      ENDIF.
      SELECT zterm
      FROM t052
      INTO TABLE it_zterm.
      IF sy-subrc NE 0.
        CLEAR  it_zterm.
      ENDIF.
      SELECT bschl
      FROM tbsl
      INTO TABLE it_bschl.
      IF sy-subrc NE 0.
        CLEAR  it_bschl.
      ENDIF.
      SELECT umskz
      FROM t074u
      INTO TABLE it_umskz.
      IF sy-subrc NE 0.
        CLEAR  it_umskz.
      ENDIF.
      SELECT DISTINCT xblnr
      FROM bkpf
      INTO TABLE it_xblnr.
      IF sy-subrc NE 0.
        CLEAR it_xblnr.
      ENDIF.
      SELECT prctr
      FROM cepc
      INTO TABLE it_prctr.
      IF sy-subrc NE 0.
        CLEAR it_prctr.
      ENDIF.
      SELECT kostl
      FROM csks
      INTO TABLE it_kostl.
      IF sy-subrc NE 0.
        CLEAR it_kostl.
      ENDIF.
      SELECT branch
      FROM j_1bbranch
      INTO TABLE it_branch.
      IF sy-subrc NE 0.
        CLEAR it_branch.
      ENDIF.
      SELECT seccode
      FROM seccode
      INTO TABLE it_seccode.
      IF sy-subrc NE 0.
        CLEAR it_seccode.
      ENDIF.
      SELECT bschl shkzg
      FROM tbsl
      INTO TABLE it_tbsl.
      IF sy-subrc NE 0.
        CLEAR it_tbsl.
      ENDIF.
      SELECT aufnr
      FROM aufk
      INTO TABLE it_aufnr.
      IF sy-subrc NE 0.
        CLEAR it_aufnr.
      ENDIF.
      SELECT pernr
       FROM pa0001
       INTO TABLE it_pernr.
      IF sy-subrc NE 0.
        CLEAR it_pernr.
      ENDIF.
      LOOP AT it_input.
        CLEAR : wa_input_err,w_check.
       AT NEW xblnr.
         CLEAR w_item_no.
       ENDAT.
       AT NEW xblnr.
         CLEAR w_wrbtr.
       ENDAT.
       w_wrbtr = w_wrbtr + it_input-wrbtr.
    *checking the whether record is a header record or not.
        IF NOT it_input-ind IS INITIAL.
          CLEAR w_item_no.
    *keeping the track of item number for error record.
          w_item_no = w_item_no + 1.
    *Checking the total amount in line item eq 0 or not.
          IF w_wrbtr NE 0.
            MOVE w_xblnr TO wa_input_err-xblnr.
            CONCATENATE wa_input_err-err_text text-019 INTO wa_input_err-err_text SEPARATED BY space.
            APPEND wa_input_err TO it_input_err.
          ENDIF.
          CLEAR : w_xblnr,w_wrbtr.
    *Checking whether the record already posted or not.
          READ TABLE it_xblnr
          WITH KEY xblnr = it_input-xblnr
          TRANSPORTING NO FIELDS.
    *If record is already posted then al the line items related to that header are moved to
    *the error directory saying that record already posted.
          IF sy-subrc EQ 0.
            MOVE it_input-xblnr TO wa_input_err-xblnr.
            MOVE it_input-xblnr TO w_xblnr.
            MOVE text-024 TO  wa_input_err-err_text.
            APPEND wa_input_err TO it_input_err.
    *Setting the flag for keeping the track of the posted items.
            MOVE 'X' TO w_post.
    *Skipping the current record as it is already posted so no validation is done for that record.
            CONTINUE.
    *If the record is not posted then all the vaidation will be done and depending existanse in check table
    *corresponding enrty is moved to the error table.
          ELSE.
            CLEAR w_post.
            MOVE it_input-xblnr TO w_xblnr.
    validations for document type
            IF NOT it_input-blart IS INITIAL.
              READ TABLE it_blart
              WITH KEY blart = it_input-blart
              TRANSPORTING NO FIELDS.
              IF sy-subrc NE 0.
                MOVE w_xblnr TO wa_input_err-xblnr.
                MOVE w_item_no TO wa_input_err-item_no.
                MOVE text-018 TO wa_input_err-err_text.
              ENDIF.
            ENDIF.
    *validation for company code
            IF pr_bukrs NE it_input-bukrs.
              MOVE w_xblnr TO wa_input_err-xblnr.
              MOVE w_item_no TO wa_input_err-item_no.
              CONCATENATE wa_input_err-err_text text-005 INTO wa_input_err-err_text SEPARATED BY space.
            ENDIF.
    *validation for currency
            IF pr_waers NE it_input-waers.
              MOVE w_xblnr TO wa_input_err-xblnr.
              MOVE w_item_no TO wa_input_err-item_no.
              CONCATENATE wa_input_err-err_text text-006 INTO wa_input_err-err_text SEPARATED BY space.
            ENDIF.
    *validation for GL account number
            IF NOT it_input-newko IS INITIAL.
              MOVE it_input-newko TO w_newko.
              CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
                EXPORTING
                  input  = w_newko
                IMPORTING
                  output = w_newko.
              READ TABLE it_ska1
              WITH KEY saknr = w_newko
              TRANSPORTING NO FIELDS.
              IF sy-subrc NE 0.
                READ TABLE it_lifnr
                WITH KEY lifnr = w_newko
                         bukrs = it_input-newbk
                TRANSPORTING NO FIELDS.
                IF sy-subrc NE 0.
                  MOVE w_xblnr TO wa_input_err-xblnr.
                  MOVE w_item_no TO wa_input_err-item_no.
                  CONCATENATE wa_input_err-err_text text-029 INTO wa_input_err-err_text.
                ENDIF.
              ENDIF.
            ENDIF.
    **validation for vendor account number
          IF NOT it_input-newko IS INITIAL.
             MOVE it_input-newko TO w_newko.
             CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
               EXPORTING
                 input  = w_newko
               IMPORTING
                 output = w_newko.
             READ TABLE it_lifnr
             WITH KEY lifnr = w_newko
             TRANSPORTING NO FIELDS.
             IF sy-subrc NE 0.
               MOVE w_xblnr TO wa_input_err-xblnr.
               MOVE w_item_no TO wa_input_err-item_no.
               CONCATENATE wa_input_err-err_text text-029 INTO wa_input_err-err_text SEPARATED BY space.
             ENDIF.
           ENDIF.
    *validation for taxcode
            IF NOT it_input-mwskz IS INITIAL.
              READ TABLE it_mwskz
              WITH KEY mwskz = it_input-mwskz
              TRANSPORTING NO FIELDS.
              IF sy-subrc NE 0.
                MOVE w_xblnr TO wa_input_err-xblnr.
                MOVE w_item_no TO wa_input_err-item_no.
            

  • Posting key 31 is ignored when processing Batch Input Map

    Hi,
    I have a problem when uploading an ascii file via RFBIBL00 to generate a batch input map. The map holds vendor and account bookings. The file looks like this:
    0MapName     001sap_user            X/
    1FB01                12062007YR0001120620076 EUR  ...
    2BBSEG                         31/         //            3381,00/...
    2BBSEG                         40/         //            1111,00/...
    The file uploads fine, the batch input map is created. Then I start to process the map. Transaction FB01 is filled with the necessary information. But instead of the starting with posting key 31 it starts with key 40. Field lengst, size of the 31 line is identical to the line with posting key 40 and 50 (expect for some fields like cost center, tax code,... which are not filled in the 31 line). For me it looks like that the line with the posting key 31 is totally ignored. oO
    What could be the problem? Where to check?
    Thank you for your help.
    best regards
    Hasan

    problem solved,
    thank you anyway

  • How to process batch input session through program

    Hi Friends,
    I am getting 5 batch input sessions in SM35,but  I want to process these all sessions through program without going to SM35.
    How it is possible through Program?
    Please Guide me!
    Thanks,
    Yogesh

    Hi,
    It's the report to run the batchinput sessions.
    When you create to B.I. session, you can execute it by transaction SM35 (but it uses rsbdcsub) or rsbdcsub.
    For example you can use it in the same program where you create B.I.:
    Here the code to fill the structures of FI batch input
    standard....
    ...here it creates session...
    SUBMIT RFBIBL00 WITH DS_NAME = VA_FILE
    WITH CALLMODE = CALLMODE AND RETURN.
    ....here it runs session....
    SUBMIT RSBDCSUB WITH MAPPE = P_NAME
    WITH VON = SY-DATUM
    WITH BIS = SY-DATUM
    WITH FEHLER = ' '
    TO SAP-SPOOL
    LIST NAME P_NAME
    LIST DATASET P_NAME
    COVER TEXT P_NAME
    NEW LIST IDENTIFICATION ' '
    EXPORTING LIST TO MEMORY
    AND RETURN.
    regards,
    Shiva.

  • General BADi question:Call BADi in background job/batch input. Possible?

    Hi out there,
    i'm using thoe following BADi: /SAPSLL/CTRL_SD0C_R3 (Global Trade Service).
    But also, this question is a general question.
    If we are calling on screen the transaction VF01, the BADi is called correctly.
    But unfortunately it seemes that the BADi is NOT called (im not really sure, cause i can't debug the background task) when we are calling a batch input sequence wth f.e. form bdc_transaction VF01 nothing happens.
    Maybe BADi cannot be called in a background task? If it's possible, how could it be monitored. Thare isw no spool entry or anything like that!
    Any answer can help.
    Thank you in advance!
    Regards,
    Timo
    Edited by: Timo Ehl on Apr 14, 2009 7:27 PM

    Hi,
    generally BADIs are called in background mode. You can use the following trick to debug your BADI. You just need to create an infinite loop in your BADI implementation. Something like this.
    DATA: l_a TYPE c.
    WHILE l_a IS INITIAL.
    ENDWHILE.
    Obviously when your BADI is called in background mode then program will get into infinite loop. You can easily connect and debug running programs from transaction SM50. You need to select your background process and go to Program/Session -> Program -> Debugging. You will jump directly into your BADI methos with infinite loop. Then you will just set value to l_a and you will start debugging your BADI. If you can not find any process then your BADI is not called in background mode.
    Cheers

  • Error during background processing which is created by Std.program RFBIBL00

    Hi Gurus,
         I am using standard program RFBIBL00 to generate batch session for the Tcode FB01.
         My BDC is working fine , if i choose  foreground or display error only option in SM35.But when i process the same session in 
         background it is giving error  Field BSEG-DMBTR does exist in SAPMF05A 0302.
                                 One more thing i want to point out when i process the session in forground or in display error only option
                      there i am getting information message Field BSEG-DMBTR does exist in SAPMF05A 0302. But for background due to same message  i.e (Field BSEG-DMBTR does exist in SAPMF05A 0302)  session processing is failed.
                                    Actually through ZProgram  data being uploaded  to application server. Then i am executing std. program RFBIBL00 to generate session.And  when i go to SM35 & choose the just created session for background processing,then processin i failed.
                              We have recently upgraded from 4.7 to ECC 6.0. Previously RFBIBL00 program is working fine but after upgrade it is not working.
                   Please give your valuable suggession.
    Regards,
    S C Patil.

    How are you related to this almost identical problem?
    Field BSEG-DMBTR. does not exist in the screen SAPMF05A 0302
    Thomas

Maybe you are looking for

  • "Program files" directory problem during Microsoft Office Customization Installer in non-English versions of Windows

    We have a document-level customization solution for Word and are experiencing problems during deployment in an environment running on terminal services. The OS (Windows 2012) is English and Word (2013) is non-English (German).  Installation is done i

  • Windows Integrated Security with SSRS, Sharepoint 2013 and SSAS over http

    I have the following setup and problem: Sharepoint 2013 with SSRS in Sharepoint integrated mode SSAS 2012 SP1 with http access (IIS + msmdpump) enabled on the same box as SSAS Every component I have tried works fine with this (PerformancePoint, .bism

  • Fireworks frozen after sleep Mac OSX 10.6

    Whenever I return to Fireworks after the computer has been asleep, fireworks is busy doing something for between 5 and 15 mins before I can use it. I can force quit but sometimes I have unsaved changed or I'm unsure if there's anything I don't want t

  • Aperture runs out of memory generating previews

    Aperture 3.2.3 65K photos in library OSX 10.7.3 Model Identifier:          MacPro1,1 Processor Name:          Dual-Core Intel Xeon Processor Speed:          2.66 GHz Total Number of Cores:          4 L2 Cache (per Processor):          4 MB Memory:   

  • Black screen, briefly; hibernation? why?

    Late 2011 MBP, 16GB RAM.  As of the last few days, sporadically the screen goes black, everything goes silent -- for about 30 seconds, maybe once a day, maybe twice (I use the machine off and on through the day).  I've had various updates that are pr