Generic DataSource - Function Module Changed
I endup changing a FM that is feeding the Generic DataSrc.
The BW side is a ODS with data loaded from multiple requests using the Generic DS.
What are my implications after the change; Do I need to have a full load or Init or ...
Thanks.
Hi Gopi,
it depends on what you are looking for. If the new addition fields are not needed for the history, then the current one should n't cause any issue.
But if you are looking for the history of the new fields, then you should consider having the full load.
Secondly, as you have changed the EXTRACT on R/3, it could give you an error like version on BW is old or something like that. For this, Replicate the DS and hence execute this program "RS_TRANSTRU_ACTIVATE_ALL" to activate the trans structure.
Regards
GPK.
Similar Messages
-
Table for Function modules - Changed date & Changed by.
Hi Experts,
Help me to get Function module changed date & changed by.
For programs we can get the mentained information in TABLE : TADIR.Function Modules change history can be retrieved from table TRDIR.
Function Module stores a program Include in table TRDIR.
The details of the Function Module can be found in Attributes-->general data tab in the Function Module.
You need to pass the Include which correponds the FM.
Hence you can find the Log changes.
Hope this helps.
Regards
Vinayak -
Regarding Function module: function module change numeric to text
Hi ,
can any help me what is the function module used for : function module change numeric to text
suppose:
if i give :
Input: 11/12/2007
Output: 11 December 2007
What is the FM used for same?
Plz help me outI'm not sure if there is a FM that will directly change Your date to the right format but You can write simple code to do this:
DATA: lv_subrc LIKE sy-subrc,
lt_month TYPE TABLE OF t247,
ls_month TYPE t247,
lv_odate TYPE string,
lv_ndate TYPE string,
lv_char1 TYPE char1.
lv_odate = '11/12/2007'.
CALL FUNCTION 'MONTH_NAMES_GET'
EXPORTING
language = sy-langu
IMPORTING
return_code = lv_subrc
TABLES
month_names = lt_month
EXCEPTIONS
month_names_not_found = 1
OTHERS = 2.
IF sy-subrc = 0.
LOOP AT lt_month INTO ls_month WHERE mnr = lv_odate+3(2).
CONCATENATE lv_odate(2) ls_month-ltx lv_odate+6(4) INTO lv_ndate SEPARATED BY lv_char1.
ENDLOOP.
ELSE.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF. -
Function Module Changed - Selection Screen still has old values
Hi All,
Our data source uses a function module while extraction. (generic)
We have changed the Text Symbols in our function module.
In the function module we fill one particular field (master data) as per the logic.
The changes done are reflected in the dataloads and data is fine in BW.
our problem is the selection screen in BW and in the reports, it shows the older values as well for that particular field.
Can anyone help us in this regard?
thanks
SudeeptiSudeepti,
run program
rsdds_aggregates_maintain for the relevant infoobjects and see if the change is carried over..
Also check if the text tables for the same refer to the older values...
Arun
Assign points if useful -
Delta loading through Generic extractor - function module not found
Hi,
I'm working on a BW3.5 system and we have some generic delta FM extractors. One of these is called ZBW_CONF_DELTA and the FM is also called ZBW_CONF_DELTA. It is a delta-enabled extractor. Whenever an extraction is done in the init delta mode, the data gets picked up from SAP.
However, whenever we load subsequent deltas, the extractor brings zero records. When I look in the SM37 logs in R/3, it says "Function module /BIC/QIZBW_CONF_DELTA0001 does not exist"
I'm not sure where the "/BIC/QIZBW_CONF_DELTA0001" function module name came from, because I haven't given it like that (if I did, the init load would also have failed).
Due to this problem, I'm unable to perform any delta loads. Is there anything I could be doing to fix this?
RegardsHi,
First check how extractor works in R/3 side using RSA3
Make a full load.
Now check the generic delta field of your generic extractor, lets say changed on date.
Do the SAP transaction ( take help from some Functional COnsultant ) to update that delta field. Note that record.
Now if u do the delta load with same extractor, you are suppose to get that record.
If not then there is some problem with FM or extracor.
Let me know what happens.
Thank-You.
Regards,
Vinod -
Function Module Changing Status of ECR
Hello,
Is there any function module/ BAPI to change the status of ECR?
If i take the transaction cc32, click on status button.
A user has options to do the following Actions
Check ECR
ECR Checked
Approve ECR
Convert ECR
Close ECO
Release ECO
Reject ECR
Withdraw Approval
Order Incomplete
Order Complete
Are there any BAPI/FM for Convert ECR/Clode ECO/Release ECO?
Please help.
Regards,
RemiWrote a BDC program that runs cc32n and release ECR
-
How to Generate Information Errors in Generic Extractor Function Module
Hi, In my Generic Extractor logic I am reaching out to an additional table to get a field. I would like to produce an informational error or red error in the process monitor if I'm unable to get the field. Is this possible? How can I generate these messages in the Extractor Function Module?
Thanks!Hi,
Please go through the below doc. It explanins each and every step of creation of generic extractor through Function module.
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/a0f46157-e1c4-2910-27aa-e3f4a9c8df33?quicklink=index&overridelayout=true
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/c062a3a8-f44c-2c10-ccb8-9b88fbdcb008?quicklink=index&overridelayout=true
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/30aefb04-7043-2c10-8e92-941536eebc79?quicklink=index&overridelayout=true
Regards,
mahesh -
Hello,
assume you have a Web AS and a mySAP ERP-system which are connected to each other. On the ERP system there's a table "A" and you need parts/columns of the table on the Web AS, furthermore "A" could not be known on the Web AS.
Is there a way to create a function module which has generic importing/exporting parameters to transfer the structure of "A" to the Web AS via RFC?
Thanks in advance.
DanielHello Daniel
One already exists - RFC_READ_TABLE.
However, making an RFC call every time you want to read a table record or two doesn't necessarily scale very well in a client-server environment.
Cheers
Dom -
XI datasources function modules does not exist after BW upgrade to 7.3
We have recently upgraded our dev BI system to 7.3
During our testing phase we found that we are unable to load data coming from XI system.
When we checked the functional modules of the XI(web services)
datasources we found that the function modules does not exist in the system.
Eg : For our GECARS datasource we have 2 funcitonal modules
1. /BIO/QI6AZXH_ZIFIGECARS
2. /BIO/QI6AZXH_ZIFIGECARS_RFC (delta function module)
we have activated resp datasource and found that code for
/BIO/QI6AZXH_ZIFIGECARS exist now but we are facing issues with RFC
funciton modules (/BIO/QI6AZXH_ZIFIGECARS_RFC )
To put it in simple terms we are facing issues with Dev BI since upgradeto 7.3 with respect to RFC and non-availability of function modules.
Kindly help us in resolving this.
Thanks,
KiranHello Kiran,
Have you found the reason for the non existence of the FM in the system after the upgrade?
Have you found any alternative? I hope you would have created an OSS message, if so whats the response have you got?
Kindly let me know as I am experiencing similar issue where one of the FM (RSDRC_MULTIPROV_GET_MAPPING) does not exist in BI system after the upgrade.
Regards,
Vinoth V -
Generic Datasource Delta Settings Change
Hi Experts,
Currently the delta field in generic datasource is set to timestamp (LOCAL) and Upper limit is blank.
I need to change the delta settings to timestamp(UTC) or set the upper limit to 1000 seconds.
Can anyone tell me how to change this in production. Do i need to change this in dev and transport this to production.
If i do the changes to generic datasource, do i have to initialise the delta again?
Pls provide me the step by step solution.
Regards,
AnandAnanda, What about the delta initialization? After transporting the datasource from R/3 dev to R/3 production, I have to replicate the datasource right.
In that case what will happen to my delta?.
One more thing incase i need to change only the upper limit value. Even for this, do i have to change it in dev and transport to production?
Regards,
Anand -
Function module change mode?
Hi,
I created a new function module in namespace created by colleague, I cant edit the source code in created FM. It is showing only in Grey font display in change mode. I can edit other parameters but not the source code.
Can anyone help me this out?
Regards
GiriDear Giri,
There must be a Insert Button, through which you can add your codes.
BTW ... What's the name of the Function Module ????
Regards,
Abir
Don't forget to award Points * -
Function module change from 4.6 c to 6.0
hi all,
plz tell me the new functiom module in ecc6.0 for
CALL FUNCTION 'PROFILE_GET' in ECC4.6c
Right answers wil b awarded points
Thanks in advance
Sandeep
Edited by: Sandeep Reddy on Mar 5, 2008 11:25 AMhi,
Use CL_GUI_FRONTEND_SERVICES=>
METHOD GET_DESKTOP_DIRECTORY.
METHOD DIRECTORY_GET_CURRENT .
METHOD GET_TEMP_DIRECTORY.
I feel that the methods REGISTRY_GET_DWORD_VALUE, REGISTRY_GET_VALUE could be useful.
Hope this helps. -
Problem with Generic Extratcor - Function Module
Hi Experts,
We have created Generic Extractor using Funcion Module to Load Inventory related data into BW.When we check in Extract Checker its show 330 records.When we check in table for that logic by material we got the same records as 330.The problem is when we extract into BW we are getting more then 695,000 records.Can somebody please tell us where the problem is .Thanks
VahgarHi,
Check in the load monitor, how many records are populated from source system, and how many are populated after transfer and update rules. Maybe there is your problem, not in the extractor but in the transfer/update.
Hope it helps.
regards,
Diego -
I have a problem - I am trying to create a generic extract function module. The problem is that the template RSAX_BIW_GET_DATA_SIMPLE uses one database select. However for my purpose I need to select from various tables in order to build up my internal table.
It is for PO Service orders so I have to read headers then detailed lines then other tables to get account assignments etc. How do I transfer this to E_T_Data using the required logic for the fetch and open curser etc.OK I have written an ABAP report which gets the information I need. This is crude code that I know I can tidy up with joins but I just wanted to make sure I could get the information and that it was correct first.
The code is below. I have two scenarios one for full load and one for delta (which will be the same process but reading the po's that have changed from a bespoke table populated from a user exit EXIT_SAPLRSAP_001
from 2LIS_02_SCL.)
Anyway here it is:-
FULL LOAD ************************************
IF FLAG = 'F'.
EKKO FIRST READ
SELECT * FROM EKKO
WHERE EBELN IN PO
AND AEDAT IN DDATE
AND BUKRS = 'OPCS'
AND BSTYP = 'F'
AND LOEKZ NE 'X'.
MOVE-CORRESPONDING EKKO TO I_TAB.
APPEND I_TAB.
ENDSELECT.
EKPO SECOND READ POULATING i_tab2
LOOP AT I_TAB.
SELECT * FROM EKPO
WHERE EBELN = I_TAB-EBELN
AND PSTYP = '9'
AND EREKZ NE 'X'
AND ELIKZ NE 'X'
AND LOEKZ NE 'X'.
I_TAB2-WAERS = I_TAB-WAERS.
MOVE-CORRESPONDING EKPO TO I_TAB2.
APPEND I_TAB2.
ENDSELECT.
ENDLOOP.
SORT I_TAB2 BY EBELN EBELP.
CLEAR W_PACKNO.
POPULATE ITAB_ESLL FINAL TABLE
LOOP AT I_TAB2.
SELECT SINGLE SUB_PACKNO INTO W_PACKNO FROM ESLL
WHERE PACKNO = I_TAB2-PACKNO.
IF SY-SUBRC = 0.
SELECT * FROM ESLL
WHERE PACKNO = W_PACKNO.
ITAB_ESLL-ERDAT = I_TAB2-AEDAT.
ITAB_ESLL-WAERS = I_TAB2-WAERS.
MOVE-CORRESPONDING ESLL TO ITAB_ESLL.
ITAB_ESLL-EBELN = I_TAB2-EBELN.
ITAB_ESLL-EBELP = I_TAB2-EBELP.
account assignment
CLEAR W_ZEKKN.
SELECT SINGLE ZEKKN FROM ESKL INTO W_ZEKKN
WHERE PACKNO = W_PACKNO
AND INTROW = ESLL-INTROW.
IF SY-SUBRC = 0.
CLEAR EKKN.
SELECT SINGLE * FROM EKKN
WHERE EBELN = ITAB_ESLL-EBELN
AND EBELP =
ITAB_ESLL-EBELP AND ZEKKN = W_ZEKKN.
ITAB_ESLL-PS_PSP_PNR = EKKN-PS_PSP_PNR.
ITAB_ESLL-SAKTO = EKKN-SAKTO.
ITAB_ESLL-KOSTL = EKKN-KOSTL.
ITAB_ESLL-KOKRS = EKKN-KOKRS.
I_TAB2-SAKTO = EKKN-SAKTO.
I_TAB2-KOSTL = EKKN-KOSTL.
I_TAB2-KOKRS = EKKN-KOKRS.
ENDIF.
MODIFY I_TAB2.
APPEND ITAB_ESLL.
ENDSELECT.
ENDIF.
ENDLOOP.
NOW READ EKBE
LOOP AT I_TAB2.
SELECT * FROM EKBE
WHERE EBELN = I_TAB2-EBELN
AND EBELP = I_TAB2-EBELP
AND ( BEWTP = 'E' OR BEWTP = 'R' OR BEWTP = 'Q' ).
IF SY-SUBRC = 0.
MOVE-CORRESPONDING EKBE TO ITAB_EKBE.
APPEND ITAB_EKBE.
ENDIF.
ENDSELECT.
ENDLOOP.
get rid of duplicate lines in ekbe
SORT ITAB_EKBE BY EBELN EBELP BELNR.
DATA: FIRST(1) TYPE C.
FIRST = 'x'.
DATA: D_BELNR LIKE EKBE-BELNR.
LOOP AT ITAB_EKBE.
IF FIRST = 'x'.
D_BELNR = ITAB_EKBE-BELNR.
FIRST = ''.
ELSE.
IF ITAB_EKBE-BELNR = D_BELNR.
DELETE ITAB_EKBE.
ELSE.
D_BELNR = ITAB_EKBE-BELNR.
ENDIF.
ENDIF.
ENDLOOP.
LOOP AT ITAB_EKBE.
CLEAR W_PACKNO1.
SELECT SINGLE * FROM ESSR
WHERE LBLNI = ITAB_EKBE-LFBNR.
W_PACKNO1 = ESSR-PACKNO.
CLEAR W_PACKNO.
IF SY-SUBRC = 0.
SELECT SINGLE SUB_PACKNO FROM ESLL INTO W_PACKNO
WHERE PACKNO = W_PACKNO1.
get service line items from esll
SELECT * FROM ESLL
WHERE PACKNO = W_PACKNO.
IF SY-SUBRC = 0.
ACCOUNT ASSIGNMENT INSERVICE PACKAGE
CLEAR W_ZEKKN.
SELECT SINGLE ZEKKN FROM ESKL INTO W_ZEKKN
WHERE PACKNO = W_PACKNO
AND INTROW = ESLL-INTROW.
IF SY-SUBRC = 0.
CLEAR EKKN.
SELECT SINGLE * FROM EKKN
WHERE EBELN = ITAB_EKBE-EBELN
AND EBELP =
ITAB_EKBE-EBELP AND ZEKKN = W_ZEKKN.
IF SY-SUBRC = 0.
CLEAR ITAB_ESLL.
MOVE-CORRESPONDING ESLL TO ITAB_ESLL.
ITAB_ESLL-EBELN = ITAB_EKBE-EBELN.
ITAB_ESLL-EBELP = ITAB_EKBE-EBELP.
ITAB_ESLL-ZEKKN = W_ZEKKN.
ITAB_ESLL-VGABE = ITAB_EKBE-VGABE.
ITAB_ESLL-BELNR = ITAB_EKBE-BELNR.
ITAB_ESLL-BEWTP = ITAB_EKBE-BEWTP.
ITAB_ESLL-SAKTO = EKKN-SAKTO.
ITAB_ESLL-KOSTL = EKKN-KOSTL.
ITAB_ESLL-KOKRS = EKKN-KOKRS.
ITAB_ESLL-PS_PSP_PNR = EKKN-PS_PSP_PNR.
ENDIF.
ENDIF.
CHECK IF CREDIT OR DEBIT AND ADJUST
IF ITAB_EKBE-SHKZG = 'H'.
ESLL-MENGE = ESLL-MENGE * -1.
ESLL-NETWR = ESLL-NETWR * -1.
ENDIF.
ITAB_ESLL-MENGE = ESLL-MENGE.
ITAB_ESLL-NETWR = ESLL-NETWR.
ITAB_ESLL-ERDAT = ESSR-ERDAT.
ITAB_ESLL-WAERS = ESSR-WAERS.
ITAB_ESLL-LOEKZ = ESSR-LOEKZ.
ITAB_ESLL-KZABN = ESSR-KZABN.
ITAB_ESLL-FRGKL = ESSR-FRGKL.
ITAB_ESLL-BUZEI = ITAB_EKBE-BUZEI.
ITAB_ESLL-GJAHR = ITAB_EKBE-GJAHR.
ITAB_ESLL-EBELN = ITAB_EKBE-EBELN.
ITAB_ESLL-EBELP = ITAB_EKBE-EBELP.
APPEND ITAB_ESLL.
ENDIF.
ENDSELECT.
ENDIF.
ENDLOOP.
report print out
WRITE:/5 'doc',
20 'PO Line',
30 'date created',
45 'Currency',
55 'deletion Ind',
70 'ACCEPT IND',
85 'Rel Ind',
95 'Line No',
115 'Service',
135 'Quantity',
155 'UOM',
175 'Net Value',
195 'Mat Grp',
215 'G/L Acc',
230 'Cost Centre',
245 'Cont Area',
255 'Acc *** line',
275 'Trans/Event Type',
295 'Posting Year',
315 'Mat Doc No',
335 'Mat Doc Line no',
355 'bewtp',
375 'WBS'.
SORT ITAB_ESLL BY EBELN EBELP SRVPOS EXTROW.
LOOP AT ITAB_ESLL.
WRITE:/5 ITAB_ESLL-EBELN,
20 ITAB_ESLL-EBELP,
30 ITAB_ESLL-ERDAT,
45 ITAB_ESLL-WAERS,
55 ITAB_ESLL-LOEKZ,
70 ITAB_ESLL-KZABN,
85 ITAB_ESLL-FRGKL,
95 ITAB_ESLL-EXTROW,
115 ITAB_ESLL-SRVPOS,
135 ITAB_ESLL-MENGE,
155 ITAB_ESLL-MEINS,
175 ITAB_ESLL-NETWR,
195 ITAB_ESLL-MATKL,
215 ITAB_ESLL-SAKTO,
230 ITAB_ESLL-KOSTL,
245 ITAB_ESLL-KOKRS,
255 ITAB_ESLL-ZEKKN,
275 ITAB_ESLL-VGABE,
295 ITAB_ESLL-GJAHR,
315 ITAB_ESLL-BELNR,
335 ITAB_ESLL-BUZEI,
355 ITAB_ESLL-BEWTP,
375 ITAB_ESLL-PS_PSP_PNR.
ENDLOOP.
DELTA LOAD ****************
ELSE.
IF FLAG = 'D'.
WRITE: /'Test DELTA Part'.
SELECT * FROM ZBWSERVICEPOS
WHERE DATE_UPDATED IN DDATE.
MOVE-CORRESPONDING ZBWSERVICEPOS TO I_TAB-DELTA.
APPEND I_TAB-DELTA.
ENDSELECT.
*LOOP AT I_TAB-DELTA.
WRITE:/ I_TAB-DELTA-DATE_UPDATED,
I_TAB-DELTA-EBELN, I_TAB-DELTA-EBELP.
*ENDLOOP.
ELSE.
MESSAGE I100.
ENDIF.
ENDIF. -
Issues in IDOC_XML_FILE function module in ECC5.0
Hi,
I used the function module IDOC_XML_FILE to upload and convert XML file from the application server to idoc. It was working fine in 4.6C. Howeverm when we recently upgraded to ECC5.0, the version of this function module changed. And we are facing issues with this.
- The FM is not reading the XML file correctly (There are some blank spaces while reading the file using the method, call method l_conv->read( importing data = g_xml_string ) and
- The parsing method is throwing error (CALL METHOD l_mini_parser->parse_string)
Can anybody tell whether any SAP notes available for the corrections.
Regards,
HariQuestion rephrased and asked again to improve clarity
Maybe you are looking for
-
Looking for Help - DCM Item to check if Computer Rebooted within 7 days
Hi, I would like to use DCM to tell me if computers have rebooted within 7 days. I would like to audit compliance for this reboot status. I would like to target my Windows servers (14K of them) to tell me if they have rebooted recently. Is there a
-
Macbook pro retina shutting down after computer changes graphic card
My 15 inch (Mid 2012) Retina MacBook Pro has recently started to shut down. I realized it was because of the change from using the Intel HD Graphics 4000 to the NVIDIA GeForce GT 650M. This would happen if I were to play around with the energy saving
-
Update project description using PSI
hello forum members, Does anyone know how to update a project description using PSI in an existing project? I can't see any methods or class members that let me do this. Any suggestions are appreciated. tatiana tatiana
-
My imovie keeps crashing everytime I try to export, what can I do please help
Process: iMovie [447] Path: /Applications/iMovie.app/Contents/MacOS/iMovie Identifier: com.apple.iMovie8 Version: 8.0.6 (821) Build Info: iMovieApp-8210000~16 Code Type: X86 (Native) Parent Process: launchd
-
Help a java illiterate? Please?
Hello, everyone. I am completely illiterate with java, but not so new to programming in general. In all my classes, when I'm bored, I write games onto a TI calculator, and having a lot of fun with that, I decided I want to learn some computer program