Extraction ignores selection criteria

I am extracting data from Infotypes in R/3.  I only want the current record, i.e., the one whose ENDDA equals infinity, i.e., 12/31/9999. So given thousands of employee records, I only want to extract one per employee.
In the Selection tab of the infoPackage, I enter a range that covers around 100 employees, for test purposes; and in the field entitled ENDDA, I enter 12/31/9999.
When I specify these selection criteria in RSA3 as a test in the source system, I get exactly what I specified, my 100 or so records, each one with ENDDA = 12/31/9999.
But when I run the extraction in BW, it pulls in almost 900 records, with every record for each employee. 
What can I do to exclude the non-infinity records??
And why are these records pulled when selection criteria does not specify them?

Thanks guys for the answers, but I have indeed tried every way possible to enter these selection values, in the first field for ENDDA, and in both the ‘from’ and ‘to’ fields.
Also, I tried entering 99991231, but hitting the ‘Check’ button reverts it back to the proper format of 12/31/9999; I did check the debugger option while testing it in RSA3, and indeed internally ‘ENDDA’ has the value ‘99991231’.
I tried starting the infoObject with no PERNR values, with only the infinity date as selection, but the job bombed. Why does it work in RSA3, but not when invoked with an RFC? From BW ?
I have tried every way possible, and I still get a boatload of records for each employee, when all I want is the one with an infinity date of 12/31/9999.

Similar Messages

  • BW ignores selection criteria in a Infopackage after transport

    Hi all,
    After transporting Infopackages with selection criteria the target system ignores them. If I create further Infopackages on the target system everthing is fine. It seems as if the criteria were not transported but they are displayed. I replaced the criteria, saved the infopackage again but this didn't solve my issue.
    We are using BW 7.0 Level 14.
    Any ideas?
    Many thanks, Dennis

    Hi Srini,
    thanks for your quick repsonse. I am talking about 10 Infopackages. I transported some of them again but always the same issue. I created new infopackages on production and indeed it works but I use them in process chains and therefoe I might change the chains on production. This is something I don't want to do.
    Any other ideas?
    Cheers, Dennis

  • How to ignore the selection criteria temporary page in print

    Hi Experts,
    I use 2007A and when i would like to print example a Trial Balance then the system prints the selection criteria on the first printed page .
    How can I delete or ignore this option? There's no need for this print.
    I was searching in help files but with no success.
    Thanks,
    Eszter

    In Administration > System Initialization > Print Preferences > General Tab
    There is a checkbox for "Print SAP Business One Generation Message"
    Uncheck it to not print the first page with selection criteria.
    Hope this was what you were looking for.

  • Selection criteria are not applied to summary fields on group footers.

    I wonder if anyone can help me with this problem.  I am using Crystal reports version 11.2, and my data source is a Sql Server view.
    The records on the view have a date field, and I have selected all records within a given date range in "Selection Formulas".
    The records are then grouped, and the Crystal summary facility used to summarise number fields on the group footers.
    So for example, if my view contains four records, one with field "amount" = 2, one with field "amount" = 8, one with field "amount" = 6, one with field "amount" = 3, but only the first two records are within the valid date range, you would expect to see the first two records listed out at detail level, then field "amount" summarised at group level, with a summarised value of 10.
    ie ....                record1                      2
                           record2                      8   
                           group level total         10
    This works fine when I run the report using Crystal's "print preview" facility.  However, when the report is run from within an application written in C#.NET, the selection criteria are not applied to the summary field, so you get ..
                           record1                      2
                           record2                      8   
                           group level total          19
    I tried putting the date selection criteria at both record and group level, but that did not work.
    I googled the problem and found an article explaining that Crystal first performs the record-level selection, then it creates the groups and totals up any summary fields, and only then does it apply the group-level selection criteria, which can lead to problems like the one I have described above.  However, since I have put my date selection criteria at both record and group level, I do not understand why I still get the problem.
    In one report I got round this problem by creating a formula that returned zero if the record date was outside of the valid date range, and returned the number field to be summarised if the date was valid, then summarising that formula, instead of summarising the number field directly.
    In other reports I created one formula to set a shared variable as zero, then another formula to accumulate it at detail record level, then another formula to display the variable at the group footer.  In other words, I did not bother with the Crystal summary facility at all, but created my own summary facility.
    While googling the problem to see what other people did in this situation, I noticed that most fixes used variations of the "shared variables and formulae" fix to get round the problem.
    The problem is that I have lots of complex reports and it will take ages to replace the summarised fields with shared variables and formulae.  The reports were initially tested with "Print Preview" so we did not notice this problem until the C#.Net application was ready to use them.  And I can't believe that you are simply meant to ignore the summary facility and re-invent the wheel by doing it all manually.
    Please tell me that there is something simple that I have been doing wrong!!!  If I have not given enough information for you to answer, please let me know.
    Thanks,
    Anne-Marie

    Hi, Anne-Marie;
    You may be running into a common issue that is docuemented here:
    [SelectionFormula|https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/oss_notes_boj/sdn_oss_boj_erq/sap(bD1lbiZjPTAwMQ==)/bc/bsp/spn/scn_bosap/notes%7B6163636573733d36393736354636443646363436353344333933393338323636393736354637333631373036453646373436353733354636453735364436323635373233443330333033303331333233303334333833393335%7D.do]
    Regards,
    Jonathan
    Edited by: Jonathan Parminter on Mar 16, 2009 8:03 AM

  • How to change Selection Criteria for a Business Content Data Source

    Hi Experts
    I am extracting data using 0CO_OM_CCA_9 Datasource. I would like to be able to select a range of Company Code (BUKRS) to pull in, but I cannot find a way to make certain fields available as selection criteria. When I go into "Change DataSource", I can unselect fields, and even select certain fields, but the option for most is grayed out.
    How can I make this field available as selection criteria in Infopackage?
    Thanks for the help.

    Its not that simple to enable a new selection for a Business Content Datasource, if its not already provided by SAP. Enabling new fields for selection should be accompanied by corresponding extractor code changes to process those field selections and use those selections throughout the extraction process.
    Solution for your problem would be create a custom extractor with all the logic of standard extractor (function module BWOMD_GET_CTRCSTA1 for 0CO_OM_CCA_9) and extra logic to process the new fields for selection.
    Hope it helps!

  • Cannot acces to the selection criteria of a local query in web browser

    We cannot access to the selection criteria of a local query in using the web browser
    It seems this issue is already known, a local query created with BW release 7 cannot be used with the web browser.
    But this is a blocking issue in our case because we cannot create another local query in using BW 3.X and if we are using the analyser with RRMX and Excel we cannot displayed more of 65000 rows due to Analyser R3.X or R7.
    That's why we want to use the web browser because we can export the extraction from the intranet in MS Excel 2007 without limitation of rows.
    Thanks in advance to find a solution asap

    Hi Mustafa,
    I checked your requirement but it is not possible to display first value as default value for a drop down list because the list will be generate when you click the drop down list. You can use a 'list box' instead of drop down list.
    Regards
    Basheer

  • Selection Criteria for Delta loads triggered using MDM_CLNT_EXTR

    Hi ,
    Currently we are required to load data only from two specific account groups . Therefore in the selection criteria in mdm_clnt_extr we maintian these two account groups and extract data.
    However, when setting up the delta load there does not to be an option to restrcit the delta to a specify an criteria. Therefore, in our case several records from account groups which are not required are passed on to the MDM system.
    Is there a way to address this requirement ?
    1. There is an option to run the initial load variants at regular intervals, the problem with this is that in our case we have several variant creates as the R/3 system does not allows extraction on more that 999 records at a time. Therefore at point of time to capture the delta records , if we run all these jobs our network gets choked.
    2. Run delta job, but without selection criteria it pulls out records which we don't require
    Any suggestions on how this problem can be addressed are welcome ,
    Thanks in advance,
    Anita George

    Thanks Michael !
    Well, regarding hte ALE settings, we did take a look in bd64 the filters are based on objects which one of these is relevant for customer account groups ? Probably in the future we would require all data, and then is it enogh to remove the filter ?
    Can a filter be maintained at the XI level , this would be good as only the required account groups are passed on to MDM . Is there any documentation on available on this ?
    Regarding the Import Manager, will have to check  this functionality, as it is now no matter how many times we update the map/rename /load/unload it automated imports keep failing.
    Our R/3 system seems to have problem extracting more than 999 records, as we tried with different number of records and all those extraction jobs got cancelled. So, currently we are running multiple jobs for the initial load and even this is very time consuming.
    Thanks & Regards,
    Anita George

  • Change to Selection criteria in Datasource, do we need to re-init?

    Hello all,
    We are planning to change the selection criteria for a datasource, we want the year to be one of the selection criteria so we can load data only for particular years.
    Now this datasource is in production for some time, so once we do this change will we have to re-init the extractor or the delta that is working will keep working fine?
    Please let me know.
    Thanks,

    Hi Kiran
    Its worth mentioning that if its a V3 datasource like logistics then you need to load the setup table with the required data before extraction.
    Also ensure that the measures in your DSO are in overwrite mode unless the year that you are loading does not currently exists in the DSO. (ie. its a new year)
    The Full Repair Request option is under the Scheduler menu on the infopackage.
    Hope this helps. <removed by moderator>
    If you need more help let me know.
    Asif
    Edited by: Siegfried Szameitat on Jun 15, 2009 5:17 PM

  • Error "Overlapping selection criteria with DTP" when transporting DTP

    When transporting a DTP from Dev to QA I get the following error in the trasnport log:
    Overlapping selection criteria with DTP DTP_4APJZSGKYQLUQYBCDBWK707JO
    Message no. RSBK019
    Diagnosis
    The selection criteria for the DTP to be activated overlap with the selection criteria of DTP DTP_4APJZSGKYQLUQYBCDBWK707JO in field , for example, with regard to value . Delta transfer from a source object to a target object is only allowed to transfer each record oncce. However, this cannot be guaranteed if two DTPs have overlapping selection criteria with the 'Delta' extraction mode.
    System Response
    You cannot activate the DTP with the current selection criteria.
    Procedure
    Restrict the selection criteria so that they do not overlap with the selection criteria for DTP DTP_4APJZSGKYQLUQYBCDBWK707JO.
    The DTP is a delta process which loads data from one infocube into an DSO. I understand that the error is that it is transporting the Delta parameters (something similar to a Delta initialization of infopackages I suppose) but I don´t how to access the information of the delta (selection criteria) of a DTP.
    Any suggestions? or similar experiences?
    Thanks in advance
    nicolá

    Hello,
    You can modify a parameter to create and modify dtp in Production. Like normally is done with Infopackages. There is no reason to make the changes in Dev in the Infopackages and DTP, and transport to Production. This transports normally cause that kind of errors because the id's are different in Dev, QA and Prod, and it is difficult to change dtp in that way.
    To change the parameter do like this:
    Execute Trx. RSA1 -> Transport Connection -> Tab Object Changeability -> Change DTPA to Everything Changeable.
    Do this in Dev, QA and Prod.
    Regards,
    Jorge Diogo

  • There are no PSA tables for these selection criteria

    Guys,
    I am facing this problem while loading Master data hierarchies.I see the below error in Details tab
    "There are no PSA tables for these selection criteria ".
    Pls advice.

    Hi ,
    1. Check first in source system that whether the extractor is active or not .
        Best wayout to check from RSA3.
         Hierachy datasources sometime gives error in RSA3 , you can also check froim RSA1HCAT in source system .
    2. If extractor is active and while loading it gives error , you need to activate the transfer rules again and try to extract the data from r3 .
    With Regards
    Ankit Vaish

  • Selection Criteria With Plant , And Reading File

    Guys,
    I have a selection criteria with fields SAP Plant, and a filepath to read a file. File will be containing fields like legacy plant,material, date,description etc as records. Upon user executes after giving the SAP Plants (which has low and high limit ie select-option) and filepath.
    The program should first convert the SAP Plants to Legacy Plants and Read only those file contents where the legacy plant in file matches the converted legacy plants and other non matching plant file records ignored. Please suggest and gimme a sample code.
    Shawn

    Hi Shawn,
    Naimesh i think this would help shawn, i have given u a sample code who to work around in a easy way.Guys comment on the program if u feel something i miss
    Report Z_File_Example.
    Type:Begin of ty_tab1
               zlegacy_plant type zplant-zlegacy_plant
            End of ty_tab1.
    Type : Begin of ty_tab2
    include fields similar to input file     
                   legacy_plant(4) type c ,
                   no type mara-matnr,
                   descripion type mara-mkty,
              End of ty_tab2.
    Data : out_tab1 type standard table of ty_tab1,
              wa1 type ty_tab1.
    Data : out_tab2 type standard table of ty_tab2,
              wa2 type ty_tab2.
    Select-options : s_plant like mara-werks.
    AT SELECTION-SCREEN ON END OF S_PLANT.
       LOOP AT S_PLANT.
    Select query  takes both the lower limit and high in where condition to select 
    legacy plant from the table and populate the Work area and later to internal table.
    Conversion of SAP Plant to  Legacy Plant
          Select ZLegacy_Plant
              into corresponding fields of wa1
          from Zplant where werks in S_plant
         append wa1 to out_tab1
    ENDLOOP.
    ***After reading a file using ws_upload , which gives an output in say out_tab2(internal table)
    Call WS_UPLOAD
    ****We can iterate through the out_tab2 (shown below)
    loop at out_tab2 into wa2 where legacy_plant in wa1-zlegacy_plant
       Process those records as u want
    end loop.
    Thanks

  • Thread: There are no PSA tables for these selection criteria - RSAODS209

    Hello,
    i'm trying to run an infopackage (0GL_ACCOUNT_T011_HIER_ME_FULL_R3) to load complete upload of hierarchy (0GL_ACCOUNT-HIERARCHIES 0GL_ACCOUNT )  extraction via PSA and then in corresponding info object. The load seems to work fine between ECC and PSA but it doesn't:
    I lok at PSA and the monitor-request-status is RED and the message: "There are no PSA tables for these selection criteria - RSAODS209". 
    these are the messages:
    Processing (data packet): Errors occurred
    Data Package 1 ( 2370 Records ) : Errors occurred
    Update PSA ( 2370  Records posted ) : Errors occurred
    Data save in PSA started
    2370 records written in PSA
    There are no PSA tables for these selection criteria
    I've created a new package only for loading the PSA (not the final object)  but the same error appears.
    I have also see this thread but I have no solution yet...
    There are no PSA tables for these selection criteria - RSAODS209
    thanks for your help!!

    Hi Marcel,
    Check whether you have any RED requests in your PSA--> If so delete them
    Make sure your DS, transfer rules/Transformation are active.
    Also once replicate your DS & activate. Also activate transfer structure. Then try loading.
    Hope it helps!
    Regards,
    Pavan

  • There are no PSA tables for these selection criteria - RSAODS209

    Hello,
    i'm trying to run an infopackage (0GL_ACCOUNT_T011_HIER_ME_FULL_R3) to load complete upload of hierarchy (0GL_ACCOUNT-HIERARCHIES 0GL_ACCOUNT)  extraction via PSA and then in corresponding info object. The load seems to work fine between ECC and PSA but it doesn't:
    I lok at PSA and the monitor-request-status is RED and the message: "There are no PSA tables for these selection criteria - RSAODS209". 
    these are the messages:
    Processing (data packet): Errors occurred
    Data Package 1 ( 2370 Records ) : Errors occurred
    Update PSA ( 2370  Records posted ) : Errors occurred
    Data save in PSA started
    2370 records written in PSA
    There are no PSA tables for these selection criteria
    I've created a new package only for loading the PSA (not the final object)  but the same error appears.
    I have also see this thread but I have no solution yet...
    There are no PSA tables for these selection criteria - RSAODS209
    thanks for your help!!

    Duplicate thread

  • SUBMIT rkaep000 with "Further Selection Criteria"

    Hi all,
    Could anyone please tell me how to call the transaction KSB1 with it's "Further Selection Criteria" (i.e. Document Number). I have tried the following but it didn't work.
    SUBMIT rkaep000
      WITH p_tcode = 'KSB1'
      WITH kostl = '7062'
      WITH r_belnr BETWEEN '101727316' AND '101727316'
      WITH r_budat BETWEEN '20070101' AND '20070131'
      AND RETURN.
    Many thanks!
    Steve.

    try using submit rkaep000 with with selection-table t_Screen_tab.
    t_screen_tab is a table of type rsparams.
    rsparams is a structure with following field.
    SELNAME
    KIND
    SIGN
    OPTION
    LOW
    HIGH
    fill with an entry for each screen selection object.
    eg.
    t_screen_Tab-selname = 'R_BELNR'.
    t_Screen_tab-kind = 'S'. "S for select option, P for parameter
    t_Screen_tab-sign = 'I'. "I include E exclude
    t_screen_tab-option = 'BT'. "between, EQ or NE
    t_Screen_Tab-low = '101727316'.
    t_screen_tab-high = '101727316'.
    append t_screen_Tab.
    repeat for all selection entries required.
    Here is the abap help on topic
    Addition 3
    ... WITH SELECTION-TABLE rspar
    Effect
    If you specify this addition, parameters and selection criteria on the selection screen are supplied from an internal table rspar. You must specify an internal table with the row type RSPARAMS for rspar. The structured data type RSPARAMS is defined in the ABAP Dictionary and has the following components, all of which are data type CHAR:
    SELNAME (length 8),
    KIND (length 1),
    SIGN (length 1),
    OPTION (length 2),
    LOW (length 45),
    HIGH (length 45).
    To supply parameters and selection criteria for the selection screen with specific values, the lines in the internal table rspar must contain the following values:
    SELNAME must contain the name of a parameter or selection criterion for the selection screen in block capitals
    KIND must contain the type of selection screen component (P for parameters, S for selection criteria)
    SIGN, OPTION, LOW, and HIGH must contain the values specified for the selection table columns that have the same names as the selection criteria; in the case of parameters, the value must be specified in LOW and all other components are ignored.
    If the name of a selection criterion is repeated in rspar, this defines a selection table containing several lines and passes it on to the selection criterion. If parameter names occur several times, the last value is passed on to the parameter.
    The contents of the parameters or selection tables for the current program can be entered in the table by the function module RS_REFRESH_FROM_SELECTOPTIONS.
    Note
    In contrast to selection tables, the data types of the components LOW and HIGH in table rspar are always of type CHAR and are converted to the type of the parameter or selection criterion during transfer, if necessary.

  • Selection Criteria addition-Not working

    Hi!
    I have this report wherein I need to add two fields VBAP-Kunnr and knvv-konda in the selection screen so that I can do my drill down or search criteria based upon these two selections also apart from the existing ones, but unfortunately I am unable to get throiugh this and somehow putting this two selections in the selection criteria its not taking any effect or its just actinga  dummy selection and I am unale to drill down my report based upon those. Can anyone have a look and let me know what could be the problem please. Help would be highly appreciated.
    Thanks
    *& Include ZSD_PFGENERATETOP Report ZSD_PFGENERATE
    REPORT zsd_pfgenerate LINE-SIZE 170 LINE-COUNT 65.
    TABLES: lips, likp, vbap, vbak, vbrp, vbpa, vbrk.
    CONSTANTS: cns_vgtyp TYPE vbrp-vgtyp VALUE 'J',
    cns_intyp TYPE vbrk-vbtyp VALUE 'M',
    cns_vkorg TYPE vbak-vkorg VALUE 'CA01',
    cns_vkorg_US type vbak-vkorg value 'US01', "DEVK903521
    cns_parsh TYPE vbpa-parvw VALUE 'WE',
    cns_parsp TYPE vbpa-parvw VALUE 'AG',
    cns_parre type vbpa-parvw value 'RE', "bill-to
    cns_auzwp TYPE vbak-auart VALUE 'ZWP',
    cns_auzct TYPE vbak-auart VALUE 'ZCT',
    cns_auzif TYPE vbak-auart VALUE 'ZIF',
    cns_auztm TYPE vbak-auart VALUE 'ZTM',
    cns_fkff TYPE vbrk-fkart VALUE 'ZFF5',
    cns_fkos TYPE vbrk-fkart VALUE 'ZOF5',
    cns_upd(1) TYPE c VALUE 'S',
    cns_mode(1) TYPE c VALUE 'N'.
    Internal Tables and Work Areas
    DATA: BEGIN OF it_vbpos OCCURS 0,
    werks TYPE vbap-werks,
    audat TYPE vbak-audat,
    auart TYPE vbak-auart,
    kunag TYPE vbak-kunnr,
    name1_ag TYPE kna1-name1,
    kunsh TYPE likp-kunnr,
    name1_sh TYPE kna1-name1,
    vbeln TYPE vbak-vbeln,
    posnr TYPE vbap-posnr,
    vbdel TYPE likp-vbeln,
    psdel TYPE lips-posnr,
    kunre type kunre, "Bill-to Party
    name1_re type kna1-name1, "Bill-to Party Name
    END OF it_vbpos,
    BEGIN OF it_vbpos_temp OCCURS 0,
    vgbel TYPE lips-vgbel,
    vgpos TYPE lips-vgpos,
    vbeln TYPE vbak-vbeln,
    posnr TYPE vbap-posnr,
    END OF it_vbpos_temp,
    BEGIN OF it_report OCCURS 0,
    werks TYPE vbap-werks,
    vbeln TYPE vbak-vbeln,
    vbdel TYPE likp-vbeln,
    audat TYPE vbak-audat,
    auart TYPE vbak-auart,
    name1_ag TYPE kna1-name1,
    name1_sh TYPE kna1-name1,
    name1_re type kna1-name1, "Bill-to Party Name
    mark(1) TYPE c,
    END OF it_report,
    BEGIN OF it_vbeln OCCURS 0,
    vbeln TYPE vbak-vbeln,
    END OF it_vbeln,
    wa_vbeln LIKE LINE OF it_vbeln,
    wa_vbpos LIKE LINE OF it_vbpos,
    wa_report LIKE LINE OF it_report,
    wa_sel LIKE LINE OF it_report.
    DATA: it_vbrp type table of vbrp,
    it_vbrk type table of vbrk.
    BDC Variables
    DATA: BEGIN OF bdc_tab OCCURS 0.
    INCLUDE STRUCTURE bdcdata.
    DATA: END OF bdc_tab.
    DATA: wa_bdc LIKE LINE OF bdc_tab,
    it_bdcmess TYPE TABLE OF bdcmsgcoll.
    *& Selection-Screen definition
    SELECTION-SCREEN BEGIN OF BLOCK block2 WITH FRAME TITLE text-002.
    PARAMETERS: p_rdff TYPE c RADIOBUTTON GROUP rad1 DEFAULT 'X',
    p_rdos TYPE c RADIOBUTTON GROUP rad1.
    SELECTION-SCREEN END OF BLOCK block2.
    SELECTION-SCREEN BEGIN OF BLOCK block0 WITH FRAME TITLE text-000.
    SELECT-OPTIONS: s_werks FOR vbap-werks OBLIGATORY NO INTERVALS,
    s_auart FOR vbak-auart,
    s_kunag FOR vbak-kunnr, "Sold-to Party
    s_kunnr FOR likp-kunnr, "Ship-to Party
    s_kunre for vbak-kunnr, "Bill to Party
    s_vdatu FOR vbak-vdatu OBLIGATORY.
    SELECTION-SCREEN END OF BLOCK block0.
    SELECTION-SCREEN BEGIN OF BLOCK block1 WITH FRAME TITLE text-001.
    PARAMETERS: p_vgbel TYPE vbak-vgbel.
    SELECTION-SCREEN END OF BLOCK block1.
    selection-screen begin of block block3 with frame title text-003.
    parameters: p_billed RADIOBUTTON GROUP r1,
    p_delvd RADIOBUTTON GROUP r1 default 'X',
    p_all RADIOBUTTON GROUP r1.
    selection-screen end of block block3.
    *& Include ZSD_PFGENERATEE01
    START-OF-SELECTION.
    PERFORM read_report.
    END-OF-SELECTION.
    SET PF-STATUS 'STAT1000'.
    IF it_vbpos[] IS INITIAL.
    MESSAGE s999(z001) WITH 'No Data Selected for this criteria'.
    ELSE.
    PERFORM show_report.
    ENDIF.
    *& List Events
    AT USER-COMMAND.
    CASE sy-ucomm.
    WHEN 'SELE'.
    LOOP AT it_report INTO wa_report.
    wa_report-mark = 'X'.
    MODIFY it_report FROM wa_report.
    ENDLOOP.
    PERFORM show_report.
    WHEN 'DSEL'.
    LOOP AT it_report INTO wa_report.
    wa_report-mark = ''.
    MODIFY it_report FROM wa_report.
    ENDLOOP.
    PERFORM show_report.
    ENDCASE.
    AT LINE-SELECTION.
    DO.
    READ LINE sy-index FIELD VALUE wa_report-mark wa_report-vbeln
    wa_report-vbdel.
    IF sy-subrc NE 0.
    EXIT.
    ELSE.
    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
    EXPORTING
    input = wa_report-vbeln
    IMPORTING
    output = wa_report-vbeln.
    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
    EXPORTING
    input = wa_report-vbdel
    IMPORTING
    output = wa_report-vbdel.
    READ TABLE it_report INTO wa_sel
    WITH KEY vbeln = wa_report-vbeln.
    IF sy-subrc EQ 0.
    wa_sel-mark = wa_report-mark.
    MODIFY it_report FROM wa_sel INDEX sy-tabix.
    ENDIF.
    ENDIF.
    ENDDO.
    REFRESH: it_vbeln.
    LOOP AT it_report INTO wa_report WHERE mark EQ 'X'.
    CASE 'X'.
    WHEN p_rdff.
    wa_vbeln = wa_report-vbdel.
    WHEN p_rdos.
    wa_vbeln = wa_report-vbeln.
    ENDCASE.
    APPEND wa_vbeln TO it_vbeln.
    ENDLOOP.
    SORT it_vbeln BY vbeln.
    DELETE ADJACENT DUPLICATES FROM it_vbeln.
    IF NOT it_vbeln[] IS INITIAL.
    PERFORM process_vf01.
    ENDIF.
    *& Include ZSD_PFGENERATEF01
    *& Form read_report
    Routine to read applicable orders from database
    FORM read_report.
    DATA: lwa_lips TYPE lips,
    lc_vbeln TYPE vbrk-vbeln.
    Retrieve sales orders based on selection criteria where billing doc has not been
    created for the delivery yet
    REFRESH: it_vbeln, it_vbpos, it_report.
    Select into table based on Onsite/Fixed Facility
    CASE 'X'.
    WHEN p_rdff.
    changed for performance reasons (i.e. time-out)
    k~vgbel is not in it_vbpos but was in select statment ?
    SELECT vbap~werks vbak~audat vbak~auart vbak~kunnr AS kunag
    vbak~vbeln vbap~posnr
    INTO CORRESPONDING FIELDS OF TABLE it_vbpos
    FROM vbak INNER JOIN vbap
    ON vbak~mandt = vbap~mandt
    AND vbak~vbeln = vbap~vbeln
    WHERE vbap~werks IN s_werks
    AND vbak~vdatu IN s_vdatu
    AND vbak~vkorg in (cns_vkorg,cns_vkorg_US)
    AND vbap~oid_ship IN s_kunnr
    AND vbak~kunnr IN s_kunag
    AND vbak~auart IN s_auart
    AND ( vbak~auart = 'ZWP' or vbak~auart = 'ZIF' or
    vbak~auart = 'ZCT' or vbak~auart = 'ZTM' or
    vbak~auart = 'ZOIL' ).
    IF SY-SUBRC = 0.
    SELECT vgbel vgpos vbeln posnr FROM lips
    INTO CORRESPONDING FIELDS OF TABLE it_vbpos_temp
    FOR ALL ENTRIES IN it_vbpos
    WHERE vgbel = it_vbpos-vbeln
    AND vgpos = it_vbpos-posnr
    %_hints oracle 'index ("LIPS" "LIPS~Z01")'.
    SORT it_vbpos_temp by vgbel vgpos.
    LOOP AT it_vbpos.
    READ TABLE it_vbpos_temp
    WITH KEY vgbel = it_vbpos-vbeln vgpos = it_vbpos-posnr
    BINARY SEARCH.
    IF SY-SUBRC = 0.
    it_vbpos-vbdel = it_vbpos_temp-vbeln.
    it_vbpos-psdel = it_vbpos_temp-posnr.
    modify it_vbpos.
    ENDIF.
    ENDLOOP.
    ENDIF.
    WHEN p_rdos.
    SELECT k~vbeln p~posnr k~kunnr AS kunag k~audat k~auart p~werks k~vgbel
    INTO CORRESPONDING FIELDS OF TABLE it_vbpos
    FROM vbak AS k INNER JOIN vbap AS p ON k~vbeln = p~vbeln
    WHERE p~werks IN s_werks AND k~vdatu IN s_vdatu AND
    k~vkorg in (cns_vkorg,cns_vkorg_US) AND "DEVK903521
    k~vgbel EQ p_vgbel AND
    k~kunnr IN s_kunag AND k~auart IN s_auart AND
    p~oid_ship IN s_kunnr.
    ENDCASE.
    Determine if delivery has been billed out, if not can create PF Invoice - CHANGED
    LOOP AT it_vbpos INTO wa_vbpos.
    Check Ship-to in
    SELECT SINGLE kunnr INTO wa_vbpos-kunsh FROM vbpa
    WHERE parvw EQ cns_parsh AND vbeln EQ wa_vbpos-vbeln.
    IF sy-subrc NE 0.
    DELETE TABLE it_vbpos FROM wa_vbpos.
    CONTINUE.
    ENDIF.
    Check for Bill-to
    select single kunnr into wa_vbpos-kunre from vbpa
    where parvw eq cns_parre and vbeln eq wa_vbpos-vbeln
    and kunnr in s_kunre.
    IF sy-subrc NE 0.
    DELETE TABLE it_vbpos FROM wa_vbpos.
    CONTINUE.
    ENDIF.
    Get Partner Texts
    SELECT SINGLE name1 INTO wa_vbpos-name1_ag FROM kna1
    WHERE kunnr EQ wa_vbpos-kunag.
    SELECT SINGLE name1 INTO wa_vbpos-name1_sh FROM kna1
    WHERE kunnr EQ wa_vbpos-kunsh.
    SELECT SINGLE name1 INTO wa_vbpos-name1_re FROM kna1
    WHERE kunnr EQ wa_vbpos-kunre.
    CASE 'X'.
    WHEN p_rdff.
    IF p_delvd = 'X'.
    optimized for performance reasons i.e. time-out
    Check if delivery has been billed out
    SELECT SINGLE k~vbeln INTO lc_vbeln
    FROM vbrp AS p INNER JOIN vbrk AS k ON p~vbeln = k~vbeln
    WHERE p~vgtyp EQ cns_vgtyp AND p~vgbel EQ wa_vbpos-vbdel AND
    p~vgpos EQ wa_vbpos-psdel AND k~vbtyp EQ cns_intyp AND
    k~fksto NE 'X'.
    refresh: it_vbrp, it_vbrk.
    select vbeln from vbrp
    into corresponding fields of table it_vbrp
    where vgtyp = cns_vgtyp and vgbel = wa_vbpos-vbdel
    and vgpos = wa_vbpos-psdel
    %_hints oracle 'index ("VBRP" "VBRP~Z01")'.
    if sy-subrc = 0.
    sort it_vbrp by vbeln.
    delete adjacent duplicates from it_vbrp comparing vbeln.
    select vbeln from vbrk
    into corresponding fields of table it_vbrk
    for all entries in it_vbrp
    where vbeln = it_vbrp-vbeln
    and vbtyp = cns_intyp and fksto 'X'.
    IF sy-subrc EQ 0.
    DELETE TABLE it_vbpos FROM wa_vbpos.
    CONTINUE.
    ENDIF.
    endif.
    ELSEIF p_billed = 'X'.
    Check if delivery hasn't been billed out
    SELECT SINGLE k~vbeln INTO lc_vbeln
    FROM vbrp AS p INNER JOIN vbrk AS k ON p~vbeln = k~vbeln
    WHERE p~vgtyp EQ cns_vgtyp AND p~vgbel EQ wa_vbpos-vbdel AND
    p~vgpos EQ wa_vbpos-psdel AND k~vbtyp EQ cns_intyp AND
    k~fksto NE 'X'.
    refresh: it_vbrp, it_vbrk.
    select vbeln from vbrp
    into corresponding fields of table it_vbrp
    where vgtyp = cns_vgtyp and vgbel = wa_vbpos-vbdel
    and vgpos = wa_vbpos-psdel
    %_hints oracle 'index ("VBRP" "VBRP~Z01")'.
    if sy-subrc = 0.
    sort it_vbrp by vbeln.
    delete adjacent duplicates from it_vbrp comparing vbeln.
    select vbeln from vbrk
    into corresponding fields of table it_vbrk
    for all entries in it_vbrp
    where vbeln = it_vbrp-vbeln
    and vbtyp = cns_intyp and fksto 'X'.
    IF sy-subrc NE 0.
    DELETE TABLE it_vbpos FROM wa_vbpos.
    CONTINUE.
    ENDIF.
    endif.
    ENDIF.
    WHEN p_rdos.
    IF p_delvd = 'X'.
    Check if order has been billed out
    SELECT SINGLE * FROM vbrp
    WHERE vbeln EQ wa_vbpos-vbeln AND
    vgpos EQ wa_vbpos-posnr.
    IF sy-subrc EQ 0.
    DELETE TABLE it_vbpos FROM wa_vbpos.
    CONTINUE.
    ENDIF.
    ELSEIF p_billed = 'X'.
    Check if delivery hasn't been billed out
    SELECT SINGLE k~vbeln INTO lc_vbeln
    FROM vbrp AS p INNER JOIN vbrk AS k ON pvbeln = kvbeln
    WHERE pvgtyp EQ cns_vgtyp AND pvgbel EQ wa_vbpos-vbdel AND
    pvgpos EQ wa_vbpos-psdel AND kvbtyp EQ cns_intyp AND
    k~fksto NE 'X'.
    refresh: it_vbrp, it_vbrk.
    select vbeln from vbrp
    into corresponding fields of table it_vbrp
    where vgtyp = cns_vgtyp and vgbel = wa_vbpos-vbdel
    and vgpos = wa_vbpos-psdel
    %_hints oracle 'index ("VBRP" "VBRP~Z01")'.
    if sy-subrc = 0.
    sort it_vbrp by vbeln.
    delete adjacent duplicates from it_vbrp comparing vbeln.
    select vbeln from vbrk
    into corresponding fields of table it_vbrk
    for all entries in it_vbrp
    where vbeln = it_vbrp-vbeln
    and vbtyp = cns_intyp and fksto 'X'.
    IF sy-subrc NE 0.
    DELETE TABLE it_vbpos FROM wa_vbpos.
    CONTINUE.
    ENDIF.
    endif.
    ENDIF.
    ENDCASE.
    MOVE-CORRESPONDING wa_vbpos TO wa_report.
    APPEND wa_report TO it_report.
    MODIFY it_vbpos FROM wa_vbpos.
    ENDLOOP.
    if 'onsite field summary', then process by release sales orders
    IF p_rdos = 'X'.
    sort it_report by vbeln.
    delete adjacent duplicates from it_report comparing vbeln.
    else.
    SORT it_report BY werks name1_ag name1_sh vbeln.
    DELETE ADJACENT DUPLICATES FROM it_report.
    endif.
    SORT it_report BY name1_sh werks name1_ag vbeln.
    ENDFORM. " read_report
    *& Form process_vf01
    Call transaction VF01 and fill screen table with order values
    FORM process_vf01.
    DATA: ln_index(2) TYPE n,
    lc_field(20) TYPE c,
    lc_fkart TYPE vbrk-fkart,
    li_lines TYPE i,
    lc_msgtxt(99) TYPE c,
    lwa_bdcoptions TYPE ctu_params,
    lwa_mess LIKE LINE OF it_bdcmess.
    REFRESH: it_bdcmess.
    lwa_bdcoptions-dismode = cns_mode.
    lwa_bdcoptions-updmode = cns_upd.
    CASE 'X'.
    WHEN p_rdff.
    lc_fkart = cns_fkff.
    WHEN p_rdos.
    lc_fkart = cns_fkos.
    ENDCASE.
    REFRESH: bdc_tab.
    PERFORM update_bdc USING: 'X' 'SAPMV60A' '0102',
    ' ' 'BDC_CURSOR' 'RV60A-FKART',
    ' ' 'RV60A-FKART' lc_fkart,
    ' ' 'BDC_OKCODE' '/00'.
    LOOP AT it_vbeln INTO wa_vbeln.
    ln_index = sy-tabix.
    Up to the second delivery of the BDC add the Delivery to the screen, after that click the More Documents for every entry. logic changed for DEVK902353
    CASE ln_index.
    WHEN 1.
    CONCATENATE 'KOMFK-VBELN' '(' ln_index ')' INTO lc_field.
    PERFORM update_bdc USING: ' ' lc_field wa_vbeln.
    WHEN 2 OR 3.
    IF p_rdos 'X'.
    CONCATENATE 'KOMFK-VBELN' '(' ln_index ')' INTO lc_field.
    PERFORM update_bdc USING: ' ' lc_field wa_vbeln,
    'X' 'SAPMV60A' '0102',
    ' ' 'BDC_OKCODE' 'FKAN'..
    ELSE.
    CONCATENATE 'KOMFK-VBELN' '(' ln_index ')' INTO lc_field.
    PERFORM update_bdc USING: ' ' lc_field wa_vbeln.
    ENDIF.
    WHEN OTHERS.
    If p_rdos 'X'.
    CONCATENATE 'KOMFK-VBELN' '(2)' INTO lc_field.
    PERFORM update_bdc USING: ' ' lc_field wa_vbeln,
    'X' 'SAPMV60A' '0102',
    ' ' 'BDC_OKCODE' 'FKAN'.
    endif.
    ENDCASE.
    ENDLOOP.
    VF01 will go to a different screen if only one line selected
    DESCRIBE TABLE it_vbeln LINES li_lines.
    IF li_lines EQ 1.
    PERFORM update_bdc USING: 'X' 'SAPMV60A' '0104',
    ' ' 'BDC_OKCODE' '=SICH'.
    ELSE.
    PERFORM update_bdc USING: 'X' 'SAPMV60A' '0102',
    ' ' 'BDC_OKCODE' '=SICH'.
    ENDIF.
    CALL TRANSACTION 'VF01' USING bdc_tab OPTIONS FROM lwa_bdcoptions
    MESSAGES INTO it_bdcmess.
    WRITE: / 'BDC Messages:'.
    SKIP.
    LOOP AT it_bdcmess INTO lwa_mess.
    CALL FUNCTION 'RH_MESSAGE_GET'
    EXPORTING
    arbgb = 'VF'
    msgnr = lwa_mess-msgnr
    msgv1 = lwa_mess-msgv1
    msgv2 = lwa_mess-msgv2
    msgv3 = lwa_mess-msgv3
    msgv4 = lwa_mess-msgv4
    IMPORTING
    msgtext = lc_msgtxt
    EXCEPTIONS
    message_not_found = 1
    OTHERS = 2.
    WRITE: /5 lc_msgtxt.
    ENDLOOP.
    ENDFORM. " process_vf01
    form update_bdc *
    subroutine to add the data to the bdc table for trans. vf01 *
    FORM update_bdc USING dynpro field content.
    CLEAR bdc_tab.
    IF dynpro EQ 'X'.
    bdc_tab-program = field.
    bdc_tab-dynpro = content.
    bdc_tab-dynbegin = 'X'.
    ELSE.
    bdc_tab-fnam = field.
    bdc_tab-fval = content.
    ENDIF.
    APPEND bdc_tab.
    ENDFORM. "UPDATE_BDC
    *& Form show_report
    Report to Display Available Orders on Screen
    FORM show_report .
    DATA: l_idx TYPE i.
    WRITE: / 'Available Orders/Deliveries for Plant:'.
    LOOP AT s_werks.
    WRITE: s_werks-low.
    ENDLOOP.
    SKIP.
    FORMAT INTENSIFIED ON COLOR COL_HEADING.
    WRITE: /5 text-h01, text-h02.
    CASE 'X'.
    WHEN p_rdff.
    WRITE: text-h06.
    ENDCASE.
    WRITE: text-h03, text-h04, text-h05, text-h07,
    / sy-uline.
    FORMAT INTENSIFIED OFF COLOR OFF.
    l_idx = 0.
    LOOP AT it_report INTO wa_report.
    IF l_idx EQ 0.
    FORMAT COLOR COL_NORMAL INTENSIFIED ON.
    l_idx = 1.
    ELSE.
    FORMAT COLOR COL_NORMAL INTENSIFIED OFF.
    l_idx = 0.
    ENDIF.
    WRITE: / wa_report-mark AS CHECKBOX,
    wa_report-auart UNDER text-h01,
    wa_report-vbeln UNDER text-h02.
    CASE 'X'.
    WHEN p_rdff.
    WRITE: wa_report-vbdel UNDER text-h06.
    ENDCASE.
    WRITE: wa_report-audat UNDER text-h03,
    wa_report-name1_ag UNDER text-h04,
    wa_report-name1_sh UNDER text-h05,
    wa_report-name1_re under text-h07.
    HIDE: wa_report-mark, wa_report-vbeln, wa_report-vbdel.
    ENDLOOP.
    ENDFORM. " show_report
    Thanks for your kind help.
    Aarav.

    Hi, Anne-Marie;
    You may be running into a common issue that is docuemented here:
    [SelectionFormula|https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/oss_notes_boj/sdn_oss_boj_erq/sap(bD1lbiZjPTAwMQ==)/bc/bsp/spn/scn_bosap/notes%7B6163636573733d36393736354636443646363436353344333933393338323636393736354637333631373036453646373436353733354636453735364436323635373233443330333033303331333233303334333833393335%7D.do]
    Regards,
    Jonathan
    Edited by: Jonathan Parminter on Mar 16, 2009 8:03 AM

Maybe you are looking for

  • Hard Drive Failure on HP DV 6000 Pavilion laptop Windows-XP​sp3 OS - Need Data Recovery Help

    Hard Drive Failure on HP DV 6000 Pavilion laptop - Need Data Recovery Help HP Pavilion DV 6108 NR, RG365UA, purchased in late 2006 at Best Buy, with Windows XP, upgraded to Service Pack 3. It has a Fujitsu hard disk, 60 gigabyte, partitioned into C:

  • File extraction -File name is timestamped

    Hi Team, We are loading the data using flat file. The file will be stored in the application directory. we created a logical fiel name and it is  used in the data source. My problem is every day the file is uploaded to the applicaiton directory and t

  • Can we use 2 queue File in same JMS adapter

    I am doing a scenario where 2 queues( Queue1file and Queue2file) are coming from MQ series but in the receiver end both are processing one after another or one only at a time. Can I achieve this using a single JMS adapter or can you suggest any other

  • OSX Lion Installation Failure

    i downloaded osx lion from the app store, but when it finally finished downloading 3.5gb of the the file, during the installation it stops installation and says "the software could not be verified. it may have been corrupted or tampered with during d

  • How to get UserId by WD from different EP server

    Hey guys:                I deploy my WD application to EP1, and I need to use WD iview to show the same application on the other server, EP2. Everything goes fine on EP1, but the web dynpro iview on EP2 cannot get UserID. Is there any solution to get