F.62 Correspondance Urgent.
Hi experts,
I want multiple printformat when i am using F.62 tcode.
Correspondance SAP09..
and its program like below
RFKORD30 Print Program: Internal Documents F140_INT_DOCU_01
RFKORD30 Print Program: Internal Documents JV ZF140_INT_DOCU_2
what should be name of Variant.
Hi
There is no spefic name that should be give for the Variant . you can create the variant of your own any Name Ex:- you can give the correspondence name SAP06. But while creating the variant make sure that the fields should be given were your company code, Correspondence and sorting variant.
Path for creating variant:- FINANCIAL ACCOUNTING -> ACCOUNTS RECEIVABLE AND ACCOUNTS PAYABLE -> LINE ITEMS -> CORRESPONDENCE -> CARRT OUT AND CHECK SETTINGS FOR CORESPONDENCE -> CREATE REPORT VARIANT FOR CORESPONDENCE.
ASSIGN POINTS IF USEFUL
Bye
Similar Messages
-
BAPI to update PO's and Corresponding line items numbers **URGENT**
Hi All,
I have a requirement to create a program which will take list of POs and corresponding line item number and update Final invoice indicator for the same. This should be updated in SRM as well as R/3.
I think, it can be done by a BAPI. Do anyone have idea, which BAPI will be applicable for the same?? You can also share yours views on this.
Regards,
Parvez.Hi
We have done this.. This is easily possible using BAPIs.
Try using SRM BAPIs
META_PO_GETLIST
META_PO_GETDETAIL
<u>Note - SRM system calls BAPI in R/3 backend using RFC Call</u>
In R/3 backend
BAPI_PO_CREATE1
BAPI_PO_CREATE
BAPI_PO_CHANGE
Hope this will definitely help.
Regards
- Atul -
Urgent: How to modfy the Report program Corresponding to a Infoset
Hi Friends,
I have done an infoset. I have used TCURR table for Query. I saw the Standard program of that Query having select statement like Select single * from Tcurr where Gdatum = RDD.
Where RDD is the value having Statndard date where Gdatum is Converted Date format using some conversion routine ...So the select statement is failing in
the standard program AQ50MPL=========COS_EE========.
When i tried to add an conversion routine before the select statement to convert the date to that Specific statement...When i tried to go to Change mode i got an error message like
"Standard SAP Program Status is not modifiable" can i change the Standard program which is not asking for Access key for change..
PLease help me how to change the standard program or How to make a copy of standard program into a Z program and how to call that z program instead of that standard program..
Please help me..hi Gokul,
It's not possible to edit the standard AQ programs that you create using Infosets rather these AQ programs are generated when you generate the Infoset and the Query.
Secondly there's a point to be taken care of when we work on Queries and Infosets. There are two areas of Queries and Infosets namely, Global Area and Client-specific area. At this point, it's better to rush up with the jargons as you're running out of time. All you need to do is follow the steps below:
1) Goto SQ02 *infoset* -> *give in your infoset name*change
2) Goto EXTRAS tab or Press F5.
3) Goto CODE tab
4)from the drop-down CODING SECTION *you can choose from the list wherein you need to place your code or change the existing code by traversing the list*
5) Generate the code.
6) Repeat steps 1-5 for Client-specific area as well *choose Environment ->Query Areas -> Client-specific* to change the code there.
7) Generate the corresponding Query(SQ01) in a similar fashion *Global Area and Client-specific area as mentioned in step 6*
Reward points if your requirement is met!!
Thanks,
Vaishnavi -
Corresponding table in the source system does not contain any data -URGENT
Hi Guru's,
I have already uploaded master data.
I have created infosource added infoObjects to it and activated it to create communication strucure.
M using RSA1OLD transaction.
and assigned datasource to infosource ie source system name and clicked ok.
save datasource to infosurce assigned msg displayed, clicked ok.
transfer rules r created, i have also created update rules and assigned infosource to it.
then created infopackage n added execel file name .csv
in datatargets tab selected data target as infocube. n then in schedule tab start data load immediately and clicked ok.
everything is fine upto schedule n in monitor it does not display any data.
what will be the problem??i have also created update rules and assigned infosource to it.
then created infopackage n added execel file name .csv ??
Are you loading the data from flat file or R3? If you are loading it from R3, why are you giving the Flat file name?
In this case, check in RSA3 (R3 side), whther the datas source is getting the value.
In case you are loading a flat file, you need to create a flat file data source and assign to the infosource.
Thanks..
Shambhu -
How get approver for corresponding PR or PO?-Urgent
Hi,
I want to identify the list of PO's or PR's who has approved. this information where i can get i mean in which table?
I know reporting line history we can get from HRP1001 based on the position.
thank you.
RaviHi Ravi,
For example, PR 10002620
(1) Browse table CDHDR (Change document header), specify:
Change doc. Object = BANF
Object value = PR number (remember to add first 2 zeros) i.e. 0010002620
Transaction = ME54N (release manually) and/or ME55 (collective release)
The result showing the user who has run transaction ME54N and/or ME55 for the PR, then user may be the approver of the PR. If multiple records found for a particular PR, it may be approve/reject several times. You may only extract the latest record.
(2) Because transaction ME54N can either approver or reject PR, it is necessary to further check table CDPOS (Change document items), specify:
Change doc. Object = BANF
Document number = <found in step (1)>
Table Name = EBAN (Purchase Requisition)
Field Name = FRGKZ (Release Indicator)
In the result, if field FRGKZ (Release Indicator) changed from Old value 'X' (blocked) to New value '2' (PO creation allowed), we know that the user found in step (1) is the PR approver.
Regards,
Donald -
HI Experts,
I am working on WD for ABAP.
I am using a tree to display some data. Node1 points to Root and subnode1 point to node1.
node1-->root
subnode1--> node1
When we expand node1, it shows ">" (arrow) for child nodes.
and if we further expand chld node(sunbnode1) we can see "." (Dot)
As per my requirement IF the node1 does not have any value for subnode1 than node1 should not show ">" , istead of that it should how "." for that child node.
could anyone plz tell me ....
1)how can I solve this.
2)How to use recursive node. I have never used recursive nodes.
PLease reply ASAP. Its very urgent.
for helpfull answers full points would be rewarded.
Regards,
Vishal.Hi,
When you work on Tree, you should remember 4 important attributes.
expanded, parent row key, row_key and is_leaf.
To add children to parent we will have to maintain the relationship between row_key of PARENT and parent_row_key of CHILD.
if row_key = 1, then parent_row_key shoud be eqaul to row_key of parent, so that the corresponding childs will get added to parent.
if u put is_leaf = 'X'., then it means that they bcome childs(no longer exapndable ".")
and when u expand a parent, then expand = 'X'.
Provide Reward points.
Rewards, -
URGENT-- Data is going to delete after end of loop .
hi all,
i have written code .....
SELECT DISTINCT M1VKBUR M1KUNNR M1VBELN M1BSTNK M1AUDAT M1KNUMV M2NETWR M2MWSBP M3ERDAT M3FKART
INTO CORRESPONDING FIELDS OF TABLE ITAB
FROM VBAK AS M1 INNER JOIN VBRP AS M2
ON M1VBELN = M2AUBEL
INNER JOIN VBRK AS M3 ON M2VBELN = M3VBELN
WHERE M1~VKBUR IN VKBUR
AND M3~ERDAT IN ERDAT
AND M1~KUNNR IN KUNNR
AND M3~FKART IN FKART .
DELETE ADJACENT DUPLICATES FROM ITAB COMPARING VBELN .
LOOP AT ITAB .
SELECT KAWRT KBETR INTO CORRESPONDING FIELDS OF TABLE ITAB2 FROM KONV
WHERE KNUMV = ITAB-KNUMV
AND KSCHL IN ('SKTO' , 'INV1') .
MODIFY ITAB2 INDEX SY-TABIX TRANSPORTING KAWRT KBETR .
ENDLOOP .
LOOP AT ITAB2 .
ITAB-CD_AMT = ITAB2-KAWRT * ITAB2-KBETR / 10 .
ITAB-AMT_DUE = ITAB-NETWR + ITAB-MWSBP - ITAB-CD_AMT .
MODIFY ITAB INDEX SY-TABIX TRANSPORTING CD_AMT AMT_DUE .
ENDLOOP .
problem is that i m not getting values in itab2 at end of itab, its going to delete after completing last itab value of KNUMV.
can anybody help me its urgent .
thanks in advance .
Anil .Hi Anil..
There are some corrections needed in ur Code..
Check the modified code: Changes in BOLD
SELECT DISTINCT M1VKBUR M1KUNNR M1VBELN M1BSTNK M1AUDAT M1KNUMV M2NETWR M2MWSBP M3ERDAT M3FKART
INTO CORRESPONDING FIELDS OF TABLE ITAB
FROM VBAK AS M1 INNER JOIN VBRP AS M2
ON M1VBELN = M2AUBEL
INNER JOIN VBRK AS M3 ON M2VBELN = M3VBELN
WHERE M1~VKBUR IN VKBUR
AND M3~ERDAT IN ERDAT
AND M1~KUNNR IN KUNNR
AND M3~FKART IN FKART .
<b>SORT ITAB BY VBELN.</b>
DELETE ADJACENT DUPLICATES FROM ITAB COMPARING VBELN .
<b>IF ITAB[] IS NOT INITIAL.</b>
SELECT KAWRT KBETR INTO CORRESPONDING FIELDS OF TABLE ITAB2
FROM KONV
<b>FOR ALL ENTRIES IN ITAB</b>
WHERE KNUMV = ITAB-KNUMV
AND KSCHL IN ('SKTO' , 'INV1') .
<b>ENDIF.</b>
LOOP AT ITAB2 .
ITAB-CD_AMT = ITAB2-KAWRT * ITAB2-KBETR / 10 .
ITAB-AMT_DUE = ITAB-NETWR + ITAB-MWSBP - ITAB-CD_AMT .
MODIFY ITAB INDEX SY-TABIX TRANSPORTING CD_AMT AMT_DUE .
ENDLOOP .
Now it works properly.. And with better performance.
Note: Avoid using CORRESPONDING FIELDS option in the SELECT when the Internal table structure is same as the Fields selected.
<b>Reward if Helpful.</b> -
Urgent help needed... PL/SQL Insert statement
Hi...
I need some urgent help on this project. I have a 2 column table with values that need to be inserted into another existing table which has a sequence.
This is the 2 column table:
FUND YEAR
29587 05
29587 07
Existing table:
Name Null? Type
LIST_ID NOT NULL NUMBER(6) -- This is a sequence
WEB_USER_ID NOT NULL VARCHAR2(10)
RESOURCE_TYPE NOT NULL VARCHAR2(8)
LIST_TYPE NOT NULL VARCHAR2(10)
LIST_NAME NOT NULL VARCHAR2(50)
LIST_CODE_1 NOT NULL VARCHAR2(6) -- FUND from table above
LIST_CODE_2 NOT NULL VARCHAR2(6) -- YEAR from table above
LIST_CODE_3 NOT NULL VARCHAR2(6)
LAST_UPDATED_DT NOT NULL DATE
LAST_UPDATED_BY NOT NULL VARCHAR2(10)
LIST_CODE_4 NOT NULL VARCHAR2(20)
The columns from table 1 (FUND, YEAR) correspond to columns (LIST_CODE_1, LIST_CODE_2) in table 2. The column LIST_ID is a sequence. I can put in sysdate for LAST_UPDATED_DT and my initials SN for LAST_UPDATED_BY. This is going to be for 2 unique WEB_USER_IDs which would be in the WHERE clause. I will be inserting 2200 rows for each id. A single insert statement would look like this -
INSERT INTO EXISTING_TBL (list_id,web_user_id,resource_type,list_type,list_name,list_code_1,list_code_2,list_code_3,list_code_4,last_updated_dt,last_updated_by) VALUES ('470027','WEBUSER','GL','FUNDFYF',' FUND BALANCE SUM','12010','01',' ',' ',{ts '2010-5-19 10:16:9'},'SN')
How would I do this to insert the 2200 values from my 2 column table to the existing table?
All help is greatly appreciated!!
SNHello ,
I think this will work
INSERT INTO TABLE2
LIST_ID,
WEB_USER_ID,
RESOURCE_TYPE,
LIST_TYPE,
LIST_NAME,
LIST_CODE_1,
LIST_CODE_2,
LIST_CODE_3,
LIST_CODE_4,
LAST_UPDATED_DT,
LAST_UPDATED_BY
SELECT
SEQ.NEXTVAL,
FUND,
YEAR,
<VALUE FOR RESOURCE_TYPE>,
<VALUE FOR LIST_TYPE>,
<VALUE FOR LIST_NAME>,
<VALUE FOR LIST_CODE_1>,
<VALUE FOR LIST_CODE_2>,
<VALUE FOR LIST_CODE_3>,
<VALUE FOR LIST_CODE_4>,
SYSDATE,
'SN'
FROM
TABLE1
REGARDS
Rahul Sharma -
V V URGENT Report for Vendor Aging
Hi ABAP Gurus,
I have to develop a report for VENDOR AGING. My requirement is i have to post an invoice. From Payment terms i have to get Dependent on posting date. Let us assume if payment term is 100 by adding posting date + payment term (100) i have to get due date. I'am giving I/P terms as Company code & Period. If i enter company code i have to get O/P as vendor name(lfa1-name1),vendor no(bsik-lifnr),bill no(bsik-xblnr),bill date(bsik-bldat) i.e., baseline date,amount(bsik-dmbtr) and duedate (this i have to pick from payment terms). For period i have to get O/P as 1st week bucket,2nd week bucket,3rd week bucket,4th week bucket and beyond. For this you have to take the difference b/n due date and that buckets based on this result you have to put that amount of rupees whether it is going to pay in 1st week r 2nd r 3rd r 4th or beyond this. If that due date is less than or equal to 1st week it has to come and fall in 1st week. THIS IS MY REQUIREMENT.
For this i'am using tables BSIK,LFA1.
Can any body send me the code on this. For this my delivery date is on monday.
Please help me on this it's very Urgent...
I will REWARD you the points definitely for those who help me on this.
my mail id : [email protected]
waiting for your VALUABLE REPLIES. Please intimate me if you send it to my mail.
Thanks and Regards,
Sundeep.Hi
See the report code and modify as per your requirements
REPORT zfi_vendor_ageing
NO STANDARD PAGE HEADING
LINE-COUNT 58
line-size 168
MESSAGE-ID zh_msg.
D A T A B A S E T A B L E S D E C L A R A T I O N
TABLES: lfa1, " Vendor Master (General)
t001, " Company Codes
rfpdo.
I N T E R N A L T A B L E S D E C L A R A T I O N S *
Internal Table for Vendor Open Items Data
DATA: BEGIN OF int_bsik OCCURS 0,
lifnr LIKE bsik-lifnr, " Vendor Number
name1 LIKE lfa1-name1, " Vendor Name
shkzg LIKE bsik-shkzg, " Dr/Cr Indicator
belnr LIKE bsik-belnr, " Document Number
xblnr LIKE bsik-xblnr, " Ref Doc No
blart LIKE bsik-blart, " Document Type
zfbdt LIKE bsik-zfbdt, " Base Line Date
zbd1t LIKE bsik-zbd1t, " Due date1
zbd2t LIKE bsik-zbd2t, " Due Date2
zbd3t LIKE bsik-zbd3t, " Due Date3
waers LIKE bsik-waers, " Currency
dmbtr LIKE bsik-dmbtr, " Amount in Local Curr
END OF int_bsik.
Internal Table for Amounts Sum Up Data
DATA: BEGIN OF int_final OCCURS 0,
lifnr LIKE bsik-lifnr, " Vendor Number
name1 LIKE lfa1-name1, " Vendor Name
total1 LIKE bsik-dmbtr, " Amount in Local Curr
total2 LIKE bsik-dmbtr, " Amount in Local Curr
total3 LIKE bsik-dmbtr, " Amount in Local Curr
total4 LIKE bsik-dmbtr, " Amount in Local Curr
total5 LIKE bsik-dmbtr, " Amount in Local Curr
total6 LIKE bsik-dmbtr, " Amount in Local Curr
total LIKE bsik-dmbtr, " Amount in Local Curr
END OF int_final.
D A T A D E C L A R A T I O N S
DATA : v_flag, " Flag
v_gtotal1 LIKE bsik-dmbtr, " Amount Totals
v_gtotal2 LIKE bsik-dmbtr, " Amount Totals
v_gtotal3 LIKE bsik-dmbtr, " Amount Totals
v_gtotal4 LIKE bsik-dmbtr, " Amount Totals
v_gtotal5 LIKE bsik-dmbtr, " Amount Totals
v_gtotal6 LIKE bsik-dmbtr, " Amount Totals
v_gtotal LIKE bsik-dmbtr, " Amount Totals
v_subtotal1 LIKE bsik-dmbtr, " Amount Totals
v_subtotal2 LIKE bsik-dmbtr, " Amount Totals
v_subtotal3 LIKE bsik-dmbtr, " Amount Totals
v_subtotal4 LIKE bsik-dmbtr, " Amount Totals
v_subtotal5 LIKE bsik-dmbtr, " Amount Totals
v_subtotal6 LIKE bsik-dmbtr, " Amount Totals
v_subtotal LIKE bsik-dmbtr, " Amount Totals
v_date LIKE bsik-zfbdt, " Due Date
v_tage1(4), " Age 30 days
v_tage2(4), " Age 60 days
v_tage3(4), " Age 90 days
v_fir(15), " Column Text1
v_sec(15), " Column Text2
v_thir(15), " Column Text3
v_four(17), " Column Text4
v_fidd(4), " Days field1
v_sedd(4), " Days field2
v_thdd(4), " Days field3
v_fodd(4), " Days field4
v_str TYPE SY-LISEL, " String
v_str1(11), " String
v_tage(3), " String
v_date1(10). " Date field
R A N G E D E C L A R A T I O N S
RANGES: r_date1 FOR bsik-zfbdt, " Date Range 1
r_date2 FOR bsik-zfbdt, " Date Range 2
r_date3 FOR bsik-zfbdt, " Date Range 3
r_date4 FOR bsik-zfbdt. " Date Range 4
S E L E C T I O N S C R E E N *
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
SELECT-OPTIONS: s_lifnr FOR lfa1-lifnr. "Vendor account
PARAMETERS: p_bukrs LIKE t001-bukrs. "Co. Code
SELECTION-SCREEN END OF BLOCK b1.
SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-002.
PARAMETERS: p_allgst LIKE rfpdo-allgstid OBLIGATORY DEFAULT sy-datum.
"Open items at key date
SELECTION-SCREEN END OF BLOCK b2.
SELECTION-SCREEN BEGIN OF BLOCK b3 WITH FRAME TITLE text-003.
PARAMETERS: p_tage1 LIKE rfpdo1-allgfael DEFAULT '30',
p_tage2 LIKE rfpdo1-allgfael DEFAULT '60',
p_tage3 LIKE rfpdo1-allgfael DEFAULT '90',
p_tage4 LIKE rfpdo1-allgfael DEFAULT '120'.
SELECTION-SCREEN END OF BLOCK b3.
A T S E L E C T I O N S C R E E N *
AT SELECTION-SCREEN.
Validate the screen fields
PERFORM validate_flds.
S T A R T O F S E L E C T I O N *
START-OF-SELECTION.
Fetch main data
PERFORM fetch_data.
T O P O F P A G E
Header
TOP-OF-PAGE.
PERFORM header.
E N D O F P A G E
Footer
END-OF-PAGE.
ULINE.
T O P O F P A G E D U R I N G L I N E S E L E C T I O N *
Top of Page in Secondary List
TOP-OF-PAGE DURING LINE-SELECTION.
PERFORM header1.
A T L I N E S E L E C T I O N *
AT LINE-SELECTION.
Perform Line Selections
PERFORM line_selection.
E N D O F S E L E C T I O N
END-OF-SELECTION.
List generation
PERFORM basic_list.
*& Form validate_flds
Validation of Selection Screen fields
FORM validate_flds .
Validate Vendor Code
CLEAR lfa1-lifnr.
SELECT lifnr UP TO 1 ROWS
INTO lfa1-lifnr
FROM lfa1
WHERE lifnr IN s_lifnr AND
spras = sy-langu.
ENDSELECT.
IF sy-subrc <> 0.
MESSAGE e000 WITH 'Invalid Vendor Code range'(023).
ENDIF.
Validate Company Code
CLEAR t001-bukrs.
SELECT bukrs UP TO 1 ROWS
INTO t001-bukrs
FROM t001
WHERE bukrs = p_bukrs AND
spras = sy-langu.
ENDSELECT.
IF sy-subrc <> 0.
MESSAGE e021. " Invalid Company Code range
ENDIF.
IF ( p_tage1 > p_tage2 ) OR ( p_tage1 > p_tage3 ) OR
( p_tage1 > p_tage4 ).
MESSAGE e999 WITH 'Column 1 greater'(004)
'than Column# 2 or 3 or 4'(005).
ENDIF.
*column 2
IF ( p_tage2 > p_tage3 ) OR ( p_tage1 > p_tage4 ).
MESSAGE e999 WITH 'Column 2 greater'(006)
'than Column# 3 or 4'(007).
ENDIF.
*column3
IF ( p_tage3 > p_tage4 ).
MESSAGE e999 WITH 'Column 3 greater'(008)
'than Column#4'(009).
ENDIF.
ENDFORM. " validate_flds
*& Form fetch_data
Fetching Data from Database Tables
FORM fetch_data .
Date Range Population
r_date1-sign = 'I'.
r_date1-option = 'BT'.
r_date1-low = p_allgst.
r_date1-high = r_date1-low + p_tage1.
APPEND r_date1.
r_date2-sign = 'I'.
r_date2-option = 'BT'.
r_date2-low = r_date1-high + 1.
r_date2-high = r_date1-low + p_tage2.
APPEND r_date2.
r_date3-sign = 'I'.
r_date3-option = 'BT'.
r_date3-low = r_date2-high + 1.
r_date3-high = r_date1-low + p_tage3.
APPEND r_date3.
r_date4-sign = 'I'.
r_date4-option = 'BT'.
r_date4-low = r_date3-high + 1.
r_date4-high = r_date1-low + p_tage4.
APPEND r_date4.
Select the Vendor Open Items data from BSIK
SELECT l~lifnr
l1~name1
b~waers
b~dmbtr
b~zfbdt
b~zbd1t
b~zbd2t
b~zbd3t
b~belnr
b~xblnr
b~shkzg
b~blart
INTO CORRESPONDING FIELDS OF TABLE int_bsik
FROM lfb1 AS l INNER JOIN lfa1 AS l1
ON llifnr = l1lifnr
INNER JOIN bsik AS b
ON llifnr = blifnr AND
lbukrs = bbukrs
WHERE l~lifnr IN s_lifnr AND
l~bukrs = p_bukrs and
b~zfbdt le p_allgst.
IF SY-SUBRC <> 0.
MESSAGE i000 WITH 'No Data found'(027).
ENDIF.
Removing the date limit to get the due items in the past
DELETE int_bsik WHERE
( blart NE 'RE' AND blart NE 'KR' ) OR
shkzg NE 'H'.
SORT int_bsik BY lifnr.
ENDFORM. " fetch_data
*& Form header
Display the Report Columns
FORM header .
v_tage1 = p_tage1 + 1.
v_tage2 = p_tage2 + 1.
v_tage3 = p_tage3 + 1.
v_fidd = p_tage1.
v_sedd = p_tage2.
v_thdd = p_tage3.
v_fodd = p_tage4.
MOVE v_fodd0(4) TO v_fodd1(3).
v_fodd+0(1) = space.
CONCATENATE '1 to'(010) v_fidd INTO v_fir.
CONCATENATE v_tage1 ' to '(011) v_sedd INTO v_sec.
CONCATENATE v_tage2 ' to '(011) v_thdd INTO v_thir.
CONCATENATE v_tage3 ' to '(011) space v_fodd INTO v_four.
Standard header
clear: v_date1, v_str, v_str1, v_tage.
write p_allgst to v_date1.
Move p_tage4 to v_tage.
concatenate '>' v_tage text-025 into v_str1.
concatenate
'Summary of Ageing Analysis for Vendor Open Invoices as on'(013)
v_date1 into v_str separated by space.
CALL FUNCTION 'Z_STANDARD_HEADER'
EXPORTING
title1 = 'Saudi International Petrochemical Company'(012)
title2 = v_str.
FORMAT COLOR OFF.
WRITE : /1(168) sy-uline.
FORMAT COLOR 1 INTENSIFIED.
WRITE :/1 sy-vline, 13 sy-vline, 49 sy-vline,
50(101) 'Invoices Due For(In Days)'(014) CENTERED,
151 sy-vline, 168 sy-vline .
WRITE :/1 sy-vline, 2(11) 'Vendor#'(015) CENTERED,
13 sy-vline ,14(35) 'Vendor Name'(016) CENTERED,
49 sy-vline,
50(101) sy-uline,151 sy-vline,
152(16) 'Total'(017) CENTERED,
168 sy-vline.
WRITE : /1 sy-vline,13 sy-vline, 49 sy-vline,
50(16) v_fir CENTERED, 66 sy-vline,
67(16) v_sec CENTERED, 83 sy-vline,
84(16) v_thir CENTERED, 100 sy-vline,
101(16) v_four CENTERED, 117 sy-vline,
118(16) v_str1 centered, 134 sy-vline,
135(16) 'Already Overdue'(018) CENTERED,151 sy-vline,
168 sy-vline.
FORMAT COLOR OFF.
WRITE : /1(168) sy-uline.
ENDFORM. " header
*& Form basic_list
Display the Basic List
FORM basic_list .
NEW-PAGE LINE-SIZE 168.
LOOP AT int_bsik.
CLEAR v_date.
IF int_bsik-zbd3t <> ' '.
v_date = int_bsik-zfbdt + int_bsik-zbd3t.
ELSE.
IF int_bsik-zbd2t <> ' '.
v_date = int_bsik-zfbdt + int_bsik-zbd2t.
ELSE.
v_date = int_bsik-zfbdt + int_bsik-zbd1t.
ENDIF.
ENDIF.
IF int_bsik-zbd1t = ' '.
v_date = int_bsik-zfbdt.
ENDIF.
IF v_date IN r_date1.
int_final-total1 = int_final-total1 + int_bsik-dmbtr.
ELSEIF v_date IN r_date2.
int_final-total2 = int_final-total2 + int_bsik-dmbtr.
ELSEIF v_date IN r_date3.
int_final-total3 = int_final-total3 + int_bsik-dmbtr.
ELSEIF v_date IN r_date4.
int_final-total4 = int_final-total4 + int_bsik-dmbtr.
ELSEif v_date > r_date4-high.
int_final-total5 = int_final-total5 + int_bsik-dmbtr.
ELSEif v_date < p_allgst.
int_final-total6 = int_final-total6 + int_bsik-dmbtr.
ENDIF.
AT END OF lifnr.
v_flag = 1.
ENDAT.
IF v_flag = 1.
int_final-lifnr = int_bsik-lifnr.
int_final-name1 = int_bsik-name1.
int_final-total = int_final-total1 + int_final-total2 +
int_final-total3 + int_final-total4 + int_final-total5 +
int_final-total6.
APPEND int_final.
v_gtotal1 = v_gtotal1 + int_final-total1.
v_gtotal2 = v_gtotal2 + int_final-total2.
v_gtotal3 = v_gtotal3 + int_final-total3.
v_gtotal4 = v_gtotal4 + int_final-total4.
v_gtotal5 = v_gtotal5 + int_final-total5.
v_gtotal6 = v_gtotal6 + int_final-total6.
v_gtotal = v_gtotal + int_final-total.
WRITE: /1 sy-vline,
2 int_final-lifnr COLOR 4 INTENSIFIED ON,
13 sy-vline,
14 int_final-name1 COLOR 4 INTENSIFIED ON,
49 sy-vline.
DATA : v_rem.
v_rem = sy-tabix MOD 2.
IF v_rem NE 0.
FORMAT COLOR 2 INTENSIFIED.
WRITE : 50 int_final-total1 CURRENCY int_bsik-waers,
66 sy-vline,
67 int_final-total2 CURRENCY int_bsik-waers,
83 sy-vline,
84 int_final-total3 CURRENCY int_bsik-waers,
100 sy-vline,
101 int_final-total4 CURRENCY int_bsik-waers,
117 sy-vline,
118 int_final-total5 CURRENCY int_bsik-waers,
134 sy-vline,
135 int_final-total6 CURRENCY int_bsik-waers,
151 sy-vline,
152 int_final-total CURRENCY int_bsik-waers,
168 sy-vline.
ELSE.
WRITE : 50 int_final-total1 CURRENCY int_bsik-waers,
66 sy-vline,
67 int_final-total2 CURRENCY int_bsik-waers,
83 sy-vline,
84 int_final-total3 CURRENCY int_bsik-waers,
100 sy-vline,
101 int_final-total4 CURRENCY int_bsik-waers,
117 sy-vline,
118 int_final-total5 CURRENCY int_bsik-waers,
134 sy-vline,
135 int_final-total6 CURRENCY int_bsik-waers,
151 sy-vline,
152 int_final-total CURRENCY int_bsik-waers,
168 sy-vline.
ENDIF.
FORMAT COLOR OFF.
HIDE int_final.
CLEAR int_final.
v_flag = 0.
ENDIF.
AT LAST.
WRITE : /1(168) sy-uline.
FORMAT COLOR 3 INTENSIFIED.
WRITE : /1 sy-vline, 2(47) 'GRAND TOTAL'(022) CENTERED,
49 sy-vline, 50 v_gtotal1 CURRENCY int_bsik-waers,
66 sy-vline, 67 v_gtotal2 CURRENCY int_bsik-waers,
83 sy-vline, 84 v_gtotal3 CURRENCY int_bsik-waers,
100 sy-vline,101 v_gtotal4 CURRENCY int_bsik-waers,
117 sy-vline,118 v_gtotal5 CURRENCY int_bsik-waers,
134 sy-vline,135 v_gtotal6 CURRENCY int_bsik-waers,
151 sy-vline,152 v_gtotal CURRENCY int_bsik-waers,
168 sy-vline.
HIDE : v_gtotal1,
v_gtotal2,
v_gtotal3,
v_gtotal4,
v_gtotal5,
v_gtotal6,
v_gtotal.
ENDAT.
FORMAT COLOR OFF.
ENDLOOP.
WRITE : /1(168) sy-uline.
ENDFORM. " basic_list
*& Form line_selection
When double clicked on the line display the seconday list
FORM line_selection .
NEW-PAGE LINE-SIZE 206.
Sy-lsind = 1.
DATA : v_rem,v_cnt LIKE sy-tabix.
v_cnt = 0.
SORT int_bsik BY belnr zfbdt.
LOOP AT int_bsik WHERE lifnr EQ int_final-lifnr.
v_rem = v_cnt MOD 2.
CLEAR v_date.
IF int_bsik-zbd3t <> ' '.
v_date = int_bsik-zfbdt + int_bsik-zbd3t.
ELSE.
IF int_bsik-zbd2t <> ' '.
v_date = int_bsik-zfbdt + int_bsik-zbd2t.
ELSE.
v_date = int_bsik-zfbdt + int_bsik-zbd1t.
ENDIF.
ENDIF.
IF int_bsik-zbd1t = ' '.
v_date = int_bsik-zfbdt.
ENDIF.
IF v_rem NE 0.
format color 2 intensified.
WRITE :/1 sy-vline, 2 int_bsik-belnr,
12 sy-vline,13 int_bsik-lifnr,
23 sy-vline,24 int_bsik-name1,
59 sy-vline,60 int_bsik-xblnr,
76 sy-vline,77 int_bsik-zfbdt,
87 sy-vline.
WRITE : 104 sy-vline,121 sy-vline,
138 sy-vline,155 sy-vline,
172 sy-vline, 189 sy-vline,
190 int_bsik-dmbtr CURRENCY int_bsik-waers,
206 sy-vline.
IF v_date IN r_date1.
v_subtotal1 = v_subtotal1 + int_bsik-dmbtr.
WRITE : 88 int_bsik-dmbtr CURRENCY int_bsik-waers.
ELSEIF v_date IN r_date2.
v_subtotal2 = v_subtotal2 + int_bsik-dmbtr.
WRITE : 105 int_bsik-dmbtr CURRENCY int_bsik-waers.
ELSEIF v_date IN r_date3.
v_subtotal3 = v_subtotal3 + int_bsik-dmbtr.
WRITE : 122 int_bsik-dmbtr CURRENCY int_bsik-waers.
ELSEIF v_date IN r_date4.
v_subtotal4 = v_subtotal4 + int_bsik-dmbtr.
WRITE : 139 int_bsik-dmbtr CURRENCY int_bsik-waers.
ELSEif v_date > r_date4-high.
v_subtotal5 = v_subtotal5 + int_bsik-dmbtr.
WRITE : 156 int_bsik-dmbtr CURRENCY int_bsik-waers.
ELSEif v_date < p_allgst.
v_subtotal6 = v_subtotal6 + int_bsik-dmbtr.
WRITE : 173 int_bsik-dmbtr CURRENCY int_bsik-waers.
ENDIF.
format color off.
ELSE.
WRITE :/1 sy-vline, 2 int_bsik-belnr,
12 sy-vline,13 int_bsik-lifnr,
23 sy-vline,24 int_bsik-name1,
59 sy-vline,60 int_bsik-xblnr,
76 sy-vline,77 int_bsik-zfbdt,
87 sy-vline.
WRITE : 104 sy-vline,121 sy-vline,
138 sy-vline,155 sy-vline,
172 sy-vline,189 sy-vline,
190 int_bsik-dmbtr CURRENCY int_bsik-waers,
206 sy-vline.
IF v_date IN r_date1.
v_subtotal1 = v_subtotal1 + int_bsik-dmbtr.
WRITE : 88 int_bsik-dmbtr CURRENCY int_bsik-waers.
ELSEIF v_date IN r_date2.
v_subtotal2 = v_subtotal2 + int_bsik-dmbtr.
WRITE : 105 int_bsik-dmbtr CURRENCY int_bsik-waers.
ELSEIF v_date IN r_date3.
v_subtotal3 = v_subtotal3 + int_bsik-dmbtr.
WRITE : 122 int_bsik-dmbtr CURRENCY int_bsik-waers.
ELSEIF v_date IN r_date4.
v_subtotal4 = v_subtotal4 + int_bsik-dmbtr.
WRITE : 139 int_bsik-dmbtr CURRENCY int_bsik-waers.
ELSEif v_date > r_date4-high.
v_subtotal5 = v_subtotal5 + int_bsik-dmbtr.
WRITE : 156 int_bsik-dmbtr CURRENCY int_bsik-waers.
ELSEif v_date < p_allgst.
v_subtotal6 = v_subtotal6 + int_bsik-dmbtr.
WRITE : 173 int_bsik-dmbtr CURRENCY int_bsik-waers.
ENDIF.
ENDIF.
FORMAT COLOR OFF.
v_cnt = v_cnt + 1.
ENDLOOP.
WRITE : /1(206) sy-uline.
v_subtotal = v_subtotal1 + v_subtotal2 + v_subtotal3
+ v_subtotal4 + v_subtotal5 + v_subtotal6.
FORMAT COLOR 3 INTENSIFIED.
WRITE : /1 sy-vline,
2(85) 'Total'(017) CENTERED CURRENCY int_bsik-waers ,
87 sy-vline,
88 v_subtotal1 CURRENCY int_bsik-waers,
104 sy-vline,
105 v_subtotal2 CURRENCY int_bsik-waers,
121 sy-vline,
122 v_subtotal3 CURRENCY int_bsik-waers,
138 sy-vline,
139 v_subtotal4 CURRENCY int_bsik-waers,
155 sy-vline,
156 v_subtotal5 CURRENCY int_bsik-waers,
172 sy-vline,
173 v_subtotal6 CURRENCY int_bsik-waers,
189 sy-vline,
190 v_subtotal CURRENCY int_bsik-waers,
206 sy-vline.
FORMAT COLOR OFF.
WRITE : /1(206) sy-uline.
CLEAR : v_subtotal,v_subtotal1,v_subtotal2,v_subtotal3,
v_subtotal4,v_subtotal5,v_gtotal1,v_gtotal2,v_gtotal3,
v_gtotal4, v_gtotal5,v_gtotal,v_subtotal6,v_gtotal6.
ENDFORM. " line_selection
*& Form header1
Secondary List Header
FORM header1 .
Standard header
clear: v_date1, v_str, v_str1, v_tage.
write p_allgst to v_date1.
Move p_tage4 to v_tage.
concatenate '>' v_tage text-025 into v_str1.
concatenate
'Details of Ageing Analysis for Vendor Open Invoices as on'(024)
v_date1 into v_str separated by space.
CALL FUNCTION 'Z_STANDARD_HEADER'
EXPORTING
title1 = 'Company'(012)
title2 = v_str.
FORMAT COLOR 1 intensified.
WRITE :/1(206) sy-uline.
WRITE :/1 sy-vline,12 sy-vline ,
23 sy-vline,59 sy-vline,76 sy-vline,87 sy-vline,
88(101) 'Invoices Due For(In Days)'(014) CENTERED,
189 sy-vline,206 sy-vline.
WRITE : /1 sy-vline, 2(10) 'Doc Number'(021) CENTERED,
12 sy-vline, 13(10) 'Vendor#'(015) CENTERED,
23 sy-vline, 24(35) 'Vendor Name'(016) CENTERED,
59 sy-vline, 60(16) 'Ref invoice#'(019) CENTERED,
76 sy-vline, 77(10) 'Inv dt'(020) CENTERED,
87 sy-vline, 88(101) sy-uline,
189 sy-vline,190(16) 'Total'(017) CENTERED,
206 sy-vline.
WRITE : /1 sy-vline, 12 sy-vline,
23 sy-vline,59 sy-vline,
76 sy-vline,87 sy-vline,
88(16) v_fir CENTERED, 104 sy-vline,
105(16) v_sec CENTERED, 121 sy-vline,
122(16) v_thir CENTERED, 138 sy-vline,
139(16) v_four CENTERED, 155 sy-vline,
156(16) v_str1 CENTERED,
172 sy-vline,
173(16) 'Already Overdue'(018) CENTERED,
189 sy-vline,
206 sy-vline.
format color off.
WRITE : /1(206) sy-uline.
ENDFORM. " header1
Reward points if useful
Regards
Anji -
URGENT check the code for vendor ageing (Give Solution)
hi this is the code which i am using to calculate the
ageing but not able to get the result.
every time the result is 0.plz suggest me the solution.
its very urgent.
*& Report Z_VENDOR AGEING *
*& in this repoet I am calculating the vendor ageing
which is depending on formula
AGEING = Current Date(or any date entered by user) Bline Date(BSIK-zfbdt)
REPORT z_vendor NO STANDARD PAGE HEADING
LINE-SIZE 200
LINE-COUNT 65(3).
TABLES : bsik.
DATA : BEGIN OF t_out OCCURS 0,
bukrs LIKE bsik-bukrs,
saknr LIKE bsik-saknr,
bldat LIKE bsik-bldat,
wrbtr LIKE bsik-wrbtr,
lifnr LIKE bsik-lifnr,
zfbdt like bsik-zfbdt,
ageing type i,
END OF t_out.
parameters : p_date1 type d.
SELECT-OPTIONS : s_bukrs FOR bsik-bukrs,
s_saknr FOR bsik-saknr,
s_lifnr FOR bsik-lifnr.
SELECT bukrs saknr bldat wrbtr lifnr zfbdt
FROM bsik
INTO TABLE t_out
WHERE saknr IN s_saknr
AND bukrs IN s_bukrs
AND lifnr IN s_lifnr.
CALL FUNCTION 'DAYS_BETWEEN_TWO_DATES'
EXPORTING
i_datum_bis = p_date1
i_datum_von = t_out-zfbdt
I_KZ_EXCL_VON = '0'
I_KZ_INCL_BIS = '0'
I_KZ_ULT_BIS = ' '
I_KZ_ULT_VON = ' '
I_STGMETH = '0'
I_SZBMETH = '1'
IMPORTING
E_TAGE = t_out-ageing
EXCEPTIONS
DAYS_METHOD_NOT_DEFINED = 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.
LOOP AT t_out.
WRITE : / t_out-saknr,
t_out-lifnr,
t_out-wrbtr,
t_out-zfbdt,
t_out-ageing.
ENDLOOP.hi sanjeev,
still problem there.
dont worry. just copy this code.
try this code.
TABLES : bsik.
DATA : BEGIN OF t_out OCCURS 0,
bukrs LIKE bsik-bukrs,
saknr LIKE bsik-saknr,
bldat LIKE bsik-bldat,
wrbtr LIKE bsik-wrbtr,
lifnr LIKE bsik-lifnr,
zfbdt like bsik-zfbdt,
ageing type i,
END OF t_out.
parameters : p_date1 type d.
SELECT-OPTIONS : s_bukrs FOR bsik-bukrs,
s_saknr FOR bsik-saknr,
s_lifnr FOR bsik-lifnr.
SELECT bukrs saknr bldat wrbtr lifnr zfbdt
FROM bsik
INTO <b>corresponding fields of</b> TABLE t_out
WHERE saknr IN s_saknr
AND bukrs IN s_bukrs
AND lifnr IN s_lifnr.
<b>loop at t_out.</b>
CALL FUNCTION 'DAYS_BETWEEN_TWO_DATES'
EXPORTING
i_datum_bis = p_date1
i_datum_von = t_out-zfbdt
I_KZ_EXCL_VON = '0'
I_KZ_INCL_BIS = '0'
I_KZ_ULT_BIS = ' '
I_KZ_ULT_VON = ' '
I_STGMETH = '0'
I_SZBMETH = '1'
IMPORTING
E_TAGE = t_out-ageing
EXCEPTIONS
DAYS_METHOD_NOT_DEFINED = 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.
<b>modify t_out.</b>
clear t_out.
<b>endloop.</b>
LOOP AT t_out.
WRITE : / t_out-saknr,
t_out-lifnr,
t_out-wrbtr,
t_out-zfbdt,
t_out-ageing.
endloop
rgds
anver
Message was edited by: Anversha s -
URGENT!!! Extraction by FM is not working after entering No_MORE_DATA
Hi Experts,
We are trying to extract data from a custom table and look up cdhdr and cdpos table for change log for recrods in that custom table. I created a generic datasource with an abaper who defined a self defined FM below which is a copy of the RSAX_BIW_GET_DATA_SIMPLE and added code to it as necessary to meet the requirements above. It was extracting data fine but the job in ECC was hanging forever and bringing down the server. Then we added the code for RAISE NO_MORE_DATA. Now it is not extracting any data at all. Please help as this is really urgent. Following is the code. pleae tell me what i am doing wrong.
Thanks in advance.
FUNCTION zrsax_get_cd_data .
""Local Interface:
*" IMPORTING
*" VALUE(I_REQUNR) TYPE SRSC_S_IF_SIMPLE-REQUNR
*" VALUE(I_DSOURCE) TYPE SRSC_S_IF_SIMPLE-DSOURCE OPTIONAL
*" VALUE(I_MAXSIZE) TYPE SRSC_S_IF_SIMPLE-MAXSIZE OPTIONAL
*" VALUE(I_INITFLAG) TYPE SRSC_S_IF_SIMPLE-INITFLAG OPTIONAL
*" VALUE(I_READ_ONLY) TYPE SRSC_S_IF_SIMPLE-READONLY OPTIONAL
*" VALUE(I_REMOTE_CALL) TYPE SBIWA_FLAG DEFAULT SBIWA_C_FLAG_OFF
*" TABLES
*" I_T_SELECT TYPE SRSC_S_IF_SIMPLE-T_SELECT OPTIONAL
*" I_T_FIELDS TYPE SRSC_S_IF_SIMPLE-T_FIELDS OPTIONAL
*" E_T_DATA STRUCTURE ZDIRUPDTE OPTIONAL
*" EXCEPTIONS
*" NO_MORE_DATA
*" ERROR_PASSED_TO_MESS_HANDLER
DataSource tables
TABLES: zdirupdte.
Auxiliary Selection criteria structure
DATA: l_s_select TYPE srsc_s_select.
Maximum number of lines for DB table
STATICS: s_s_if TYPE srsc_s_if_simple,
counter
s_counter_datapakid LIKE sy-tabix,
cursor
s_cursor TYPE cursor.
IF i_initflag = sbiwa_c_flag_on.
Initialization: check input parameters
buffer input parameters
prepare data selection
Check DataSource validity
CASE i_dsource.
WHEN 'Z_DE2110_DIRUPDATE'.
WHEN OTHERS.
IF 1 = 2. MESSAGE e009(r3). ENDIF.
this is a typical log call. Please write every error message like this
log_write 'E' "message type
'R3' "message class
'009' "message number
i_dsource "message variable 1
' '. "message variable 2
RAISE error_passed_to_mess_handler.
ENDCASE.
APPEND LINES OF i_t_select TO s_s_if-t_select.
Fill parameter buffer for data extraction calls
s_s_if-requnr = i_requnr.
s_s_if-dsource = i_dsource.
s_s_if-maxsize = i_maxsize.
APPEND LINES OF i_t_fields TO s_s_if-t_fields.
ELSE. "Initialization mode or data extraction ?
Select: Retrieve all rcords from Custom table, then get CD data.
IF sy-subrc = 0.
LOOP AT payrl_itab. " 1st loop to populate e_t_data with updatd values from custom table.
Add reoord from cusom table. Update with CD header info.
s_counter = s_counter + 1.
MOVE s_counter TO e_t_data-unq_rec_id. "Make record unique
MOVE-CORRESPONDING payrl_itab TO e_t_data.
PERFORM concatenate_key. " key for cdpos_UID
PERFORM select_cd_data. " select CDHDR/CDPOS data
PERFORM get_header_data.
MOVE-CORRESPONDING hdr_itab TO e_t_data.
APPEND e_t_data.
Add same record to datapacket but with old actv/civ type value from CD table.
s_counter = s_counter + 1.
MOVE s_counter TO e_t_data-unq_rec_id.
MOVE-CORRESPONDING payrl_itab TO e_t_data.
MOVE-CORRESPONDING hdr_itab TO e_t_data.
LOOP AT cdpos_itab.
CASE cdpos_itab-fname.
WHEN 'ACTV_TYP'.
MOVE cdpos_itab-value_old TO e_t_data-actv_typ.
WHEN 'CIV_TYP'.
MOVE cdpos_itab-value_old TO e_t_data-civ_typ.
WHEN OTHERS. " Only need ACTV & CIV Types for 1.2.
ENDCASE.
ENDLOOP.
APPEND e_t_data.
CLEAR: hdr_itab[], cdpos_itab[], cdhdr_itab[].
ENDLOOP.
ELSE.
MESSAGE e185.
ENDIF. "First data package
ENDIF.
s_counter_datapakid = s_counter_datapakid + 1.
RAISE NO_MORE_DATA.
ENDIF. "Initialization mode or data extraction ?
ENDFUNCTION.Hi,
Where is the first select statement - that is select statement on the custom table ?
You should open cursor on this table and subsequently fetch package by package.
After each fetch you will check whether any data is retrieved and raise the exception no more data
something like
OPEN CURSOR WITH HOLD s_cursor_doc FOR
SELECT docnr FROM xxxxxx
WHERE racct BETWEEN '0000200000' AND '0000200999'
AND cpudt IN xxxxxx.
ENDIF. "First data package ?
**fetching required PCA documents into ranges table
FETCH NEXT CURSOR s_cursor_doc
INTO TABLE itab_docnr
PACKAGE SIZE s_s_if-maxsize.
IF sy-subrc NE 0.
CLOSE CURSOR s_cursor_doc.
RAISE no_more_data.
ENDIF. -
Urgent: Problems in Generic Extraction by Function Module
Hi BW Gurus,
I am new to SDN and also new to generic extraction using function module. My requirement is to extract long text(142 char) from CRM to BW as the text is not stored in database table I used function module read_text with in another ZXXX function module copy of (RSAX_BIW_GET_DATA_SIMPLE). In my extract structure I used GUID(char,32), Langu, long text(142 char) and 2 placeholders. Text can be extracted by passing STXH table fields(Tdname, Tdid, Tdobject, Tdspars) to read_text as parameters and i also need to use CRMD_ORDERADM_H field GUID(32 char) to compare 1st 32 chars of tdname(70 char) with Guid to select Guids and loop thru this Guids and for each Guid i need to append lines of text to e_t_data but as i donot know ABAP i unable to write the code for this. Through my friends help i wrote code when i check in RSA3 it is displaying the text but when i replicate into BW and load into data target in monitor the status is red with records initially but afterwards it will be red status again with 0 from 0 records for initial load again.when i check on job logs the errors i have are:
The background job has created a job log file of 2Gb size and it is currently on a infinite loop writing entries into the SAP System Log that it cannot write to the Job log file due to Error 22 for write/read access to a file this is because of the datasource i have created. Please find my Function module and if anyone would please correct FM and send me that will be really great.I appreciate it in advance.
MY Function Module is:
FUNCTION Z_CRMORDERH_STR_TXT.
""Local Interface:
*" IMPORTING
*" VALUE(I_REQUNR) TYPE SRSC_S_IF_SIMPLE-REQUNR
*" VALUE(I_DSOURCE) TYPE SRSC_S_IF_SIMPLE-DSOURCE OPTIONAL
*" VALUE(I_MAXSIZE) TYPE SRSC_S_IF_SIMPLE-MAXSIZE OPTIONAL
*" VALUE(I_INITFLAG) TYPE SRSC_S_IF_SIMPLE-INITFLAG OPTIONAL
*" VALUE(I_READ_ONLY) TYPE SRSC_S_IF_SIMPLE-READONLY OPTIONAL
*" VALUE(I_REMOTE_CALL) TYPE SBIWA_FLAG DEFAULT SBIWA_C_FLAG_OFF
*" TABLES
*" I_T_SELECT TYPE SRSC_S_IF_SIMPLE-T_SELECT OPTIONAL
*" I_T_FIELDS TYPE SRSC_S_IF_SIMPLE-T_FIELDS OPTIONAL
*" E_T_DATA STRUCTURE YCRM_TEXT_STR OPTIONAL
*" EXCEPTIONS
*" NO_MORE_DATA
*" ERROR_PASSED_TO_MESS_HANDLER
***" EXCEPTIONS NO_MORE_DATA
*" ERROR_PASSED_TO_MESS_HANDLER
Tables: CRMD_ORDERADM_H, STXH.
Auxiliary Selection criteria structure
data: l_s_select type srsc_s_select.
Maximum number of lines for DB table
Statics: s_s_if type srsc_s_if_simple,
counter
s_counter_datapakid like sy-tabix,
Cursor
s_cursor type cursor.
data: i_crmtext type standard table of TLINE .
types: begin of xsreph ,
GUID type CRMD_ORDERADM_H-guid,
end of xsreph.
data: i_guid type standard table of xsreph.
data: I_TEXT type STXH-TDNAME.
data: xempl like YCRM_TEXT_STR occurs 0 with header line.
data: t_tab like dd03l-tabname.
Select ranges
ranges: l_r_guid for CRMD_ORDERADM_H-guid.
l_r_connid for sflight-connid.
Initialization mode (first call by SAPI) or data transfer mode
(following calls) ?
if i_initflag = sbiwa_c_flag_on.
Initialization: check input parameters
buffer input parameters
prepare data selection
Check DataSource validity
case i_dsource.
when 'yCRM_TEXT'. " for S_SREPH1
when others.
if 1 = 2. message e009(r3). endif.
this is a typical log call. Please write every error message like this
log_write 'E' "message type
'R3' "message class
'009' "message number
i_dsource "message variable 1
' '. "message variable 2
raise error_passed_to_mess_handler.
endcase.
append lines of i_t_select to s_s_if-t_select.
Fill parameter buffer for data extraction calls
s_s_if-requnr = i_requnr.
s_s_if-dsource = i_dsource.
s_s_if-maxsize = i_maxsize.
Fill field list table for an optimized select statement
(in case that there is no 1:1 relation between InfoSource fields
and database table fields this may be far from beeing trivial)
append lines of i_t_fields to s_s_if-t_fields.
we will do our selection based on what is in the p table for the
infoobject
else. "Initialization mode or data extraction ?
Data transfer: First Call OPEN CURSOR + FETCH
Following Calls FETCH only
First data package -> OPEN CURSOR
if s_counter_datapakid = 0.
Fill range tables BW will only pass down simple selection criteria
of the type SIGN = 'I' and OPTION = 'EQ' or OPTION = 'BT'.
LOOP AT S_S_IF-T_SELECT INTO L_S_SELECT WHERE FIELDNM = 'GUID'.
MOVE-CORRESPONDING L_S_SELECT TO L_R_GUID.
APPEND L_R_GUID.
ENDLOOP.
case i_dsource.
when 'YCRM_TEXT'. " for S_SREPH1
t_tab = 'CRMD_ORDERADM_H'.
endcase.
select GUID
from (t_tab)
into table i_guid where PROCESS_TYPE = 'ZACI' and ( OBJECT_ID < '0000000042').
select tdname from stxh into i_text where tdobject = 'TEXT'.
if sy-subrc ne 0.
message e009(r3).
this is a typical log call. Please write every error message like this
log_write 'E' "message type
'R3' "message class
'009' "message number
i_dsource "message variable 1
'No master data found'. "message variable 2
raise error_passed_to_mess_handler.
endif.
Determine number of database records to be read per FETCH statement
from input parameter I_MAXSIZE. If there is a one to one relation
between DataSource table lines and database entries, this is trivial.
In other cases, it may be impossible and some estimated value has to
be determined.
open cursor with hold s_cursor for
select (s_s_if-t_fields) from CRMD_ORDERADM_H
where GUID in L_R_GUID .
ENDIF.
Fetch records into interface table.
named E_T_'Name of extract structure'.
fetch next cursor s_cursor
appending corresponding fields
of table e_t_data
package size s_s_if-maxsize.
IF SY-SUBRC <> 0.
CLOSE CURSOR S_CURSOR.
RAISE NO_MORE_DATA.
ENDIF.
as we are doing this only once can use the select statement.
***data: crmtext like tline occurs 0 with header line.
**data: i_crmtext type standard table of TLINE.
**data: i_guid type standard table of xsreph.
data: l_guid type THEAD-TDNAME.
data: st_guid type xsreph.
data: st_crmtext type TLINE.
data: lan type THEAD-TDSPRAS.
lan = 'E'.
loop at i_guid into st_guid.
l_guid = st_guid-guid.
CALL FUNCTION 'READ_TEXT'
EXPORTING
CLIENT = SY-MANDT
ID = 'A002'
LANGUAGE = lan
NAME = l_guid
OBJECT = 'CRM_ORDERH'
ARCHIVE_HANDLE = 0
LOCAL_CAT = ' '
IMPORTING
HEADER =
TABLES
LINES = i_crmtext.
EXCEPTIONS
ID = 1
LANGUAGE = 2
NAME = 3
NOT_FOUND = 4
OBJECT = 5
REFERENCE_CHECK = 6
WRONG_ACCESS_TO_ARCHIVE = 7
OTHERS = 8
e_t_data-guid = l_guid.
loop at i_crmtext into st_crmtext.
move lan to e_t_data-langu.
move st_crmtext-tdline to e_t_data-description.
append e_t_data.
endif.
endloop.
clear: st_guid,l_guid.
refresh: i_crmtext.
endloop.
S_COUNTER_DATAPAKID = S_COUNTER_DATAPAKID + 1.
endif.
ENDFUNCTION.
please Gurus as I donot know ABAP i appreciate if anyone would write a FM based on requirement and send me that will be really great this is my request. I gurantee of award points for good answers.
Regards
KishoreHi,
The statement <b>RAISE NO_MORE_DATA</b> should be active (uncommented) in your code. Otherwise, the infinte loop occurs.
See also, the Siggi's blog:
/people/siegfried.szameitat/blog/2005/09/29/generic-extraction-via-function-module
BTW, was it your thread here:
Re: Urgent: problems in extracting Long Text
Best regards,
Eugene -
Badi and Business event( Urgent)
Hi experts,
I am new to badi and business event 1120P. Please post how this business event exactly comes in to picture in this badi. also how to find this business event?
And also Post the logic or code. The requirement is given below . Pls Post the solution. Its very urgent.
Enhancement Summary
Two user exits are needed to determine the correct G/L Account and Cost Center on Shipment Cost documents and post the Material Group on the Accounting document. BADI_SCD_ACCTG and Business Event 1120P can be used to accommodate the new functionality.
Business Process
Specific G/L Accounts and Cost Centers have to be determined to post on the Shipment Cost document. This is needed to provide accurate management reporting capabilities on shipments for Sales Order or Stock Transfer Order. A new custom table must be created which contains the following information: Distribution, Mode of Transport, Account, Cost Center Material group. Distribution is an identifier here if this shipment originated from an SO or STO.
There are no screens involved in this enhancement.
Components
Table: ZTABLE1
Field Data Element Type Length Description
MANDT MANDT CLNT (key) 3 Client
DISTRIBUTION Z_DISTRIBUTION CHAR (key) 1 Distribution
MOT ZZDEF_MOT CHAR (key) 2 Mode of Transportation
MATKL MATKL CHAR (key) 9 Material group
SAKNR SAKNR CHAR 10 G/L Account Number
KOSTL KOSTL CHAR 10 Cost Center
This table gets updated manually by the FI team.
Values for Distribution are:
1 = Primary Distribution to Refinery
2 = Primary and Secondary Excluding refinery
All entries must be checked against SAP config and master tables
User exit BADI BADI_SCD_ACCTG will be used to determine the correct G/L Account, Cost Center and Product Group based on Distribution and Mode of Transport. This BADI gets called only when a new Shipment Cost document get created.
Once the BADI determined the new values it populates field c_vfkn-sakto with the G/L account, field c_vfkn-kostl with the Cost Center and exports the Product group to memory.
There is no field on the Shipment Cost Document to store the Product group. Therefore another mechanism must be used to get the Product Group on the accounting document.
Business Event 1120P can be used to import the Product group out of memory and put it on BSEG-MATNR. Structure BSEG_SUBST must be enhanced with field MATNR for this purpose.
Function, Rules, Exits Description of Functionality, Rules, Exits
BADI_SCD_ACCTG Business Add-In for Shipment Cost Account Assignment
Business Framework Business Event 1120P can be used to import the Product Group from memory and to populate field BSEG_SUBST-MATNR.
This event gets called from different places. It needs to be ensured that it only populates the value when it was called from BADI_SCD_ACCTG.
Custom Table A look-up Table needs to be maintained for Distribution, Mode of Transport, G/L Account, Cost Center and Material Group
Transaction code To maintain the new table
Append Structure To enhance structure BSEG_SUBST with MATNR
Business Add-In BADI_SCD_ACCTG can be used to determine the account assignments for a shipment cost item to set the G/L Account and Cost Center. All data needed to determine the new information gets provided in this BADI.
Logic:
Determine if STO or SO based on Document Category from internal table I_REFOBJ-VTRLP field VGTYP If is C then Distribution type is Sales Order (Primary and Secondary Excluding Refinery 2 ) else we need to check the receiving plant. If the receiving plant (I_REFOBJ-VTRLK field WERKS) is a refinery the Distribution type is Primary (1) else its a (Primary and Secondary Excluding Refinery 2 ). Refineries can be identified via Function Module ZPLANTCLASSIFICATION. The plant must be passed into Import Parameter IP_SAPPLANT and field INT_PLANTCHAR-ATNAM must be looked up with value SAPTYPE. If it exists and field ATWRT contains RFY, the plant is a refinery.
Product Group can be determined from the Material master through Material group field MARA-MATKL.
Mode of Transport will be passed in the BADI in VTRLK-OIC_MOT.
Select single entry from table ZTABLE1based on Distribution, Mode of Transport and Material Group. If nothing gets selected, error message No entry exists in table ZTABLE1for Distribution (distribution), MOT (MOT) & Mat. Group (material group) should be triggered.
Move ZTABLE1-SAKNR to c_vfkn-sakto and ZTABLE1-KOSTL to c_vfkn-kostl
The Material group must be exported to memory in BADI_SCD_ACCTG
The Material group must be imported from memory in Business Event BP1120P
Free Memory in Business Event BP1120P
This is VI01 Creation of Freight Cost Item screen
and also code for function module ZPLANTCLASSIFICATION below
FUNCTION zplantclassification .
""Local interface:
*" IMPORTING
*" REFERENCE(IP_SAPPLANT) LIKE AUSP-OBJEK OPTIONAL
*" REFERENCE(IP_CPSPLANT) LIKE AUSP-ATWRT OPTIONAL
*" REFERENCE(IP_SISLOC) LIKE AUSP-ATWRT OPTIONAL
*" EXPORTING
*" VALUE(EP_SAPPLANT) LIKE AUSP-OBJEK
*" VALUE(EP_CPSPLANT) LIKE AUSP-ATWRT
*" VALUE(EP_SISLOC) LIKE AUSP-ATWRT
*" VALUE(EP_OWNERSHIP) LIKE AUSP-ATWRT
*" VALUE(EP_SMISTYPE) LIKE AUSP-ATWRT
*" VALUE(EP_SPOTREF) LIKE AUSP-ATWRT
*" VALUE(EP_SUBTYPE) LIKE AUSP-ATWRT
*" VALUE(EP_SUPPLYREGION) LIKE AUSP-ATWRT
*" VALUE(EP_TYPE) LIKE AUSP-ATWRT
*" VALUE(EP_DISTAREA) LIKE AUSP-ATWRT
*" VALUE(EP_GEOGAREA) LIKE AUSP-ATWRT
*" VALUE(EP_HMF) LIKE AUSP-ATWRT
*" VALUE(EP_IATACODE) LIKE AUSP-ATWRT
*" VALUE(EP_IRSTCN) LIKE AUSP-ATWRT
*" VALUE(EP_OPSAREA) LIKE AUSP-ATWRT
*" VALUE(EP_PLANTSTAT) LIKE AUSP-ATWRT
*" VALUE(EP_PORTCODE) LIKE AUSP-ATWRT
*" VALUE(EP_REFAREA) LIKE AUSP-ATWRT
*" VALUE(EP_SAPTYPE) LIKE AUSP-ATWRT
*" VALUE(EP_MFGWARRANTY) LIKE AUSP-ATWRT
*" VALUE(EP_USERTYPE) LIKE AUSP-ATWRT
*" VALUE(EP_TRMCENTER) LIKE AUSP-ATWRT
*" VALUE(EP_TRANSCENTER) LIKE AUSP-ATWRT
*" VALUE(EP_FEIN) LIKE AUSP-ATWRT
*" TABLES
*" INT_PLANTCHAR STRUCTURE ZPLANTCLASSIFICATION OPTIONAL
*" EXCEPTIONS
*" NO_OBJEK_FOUND
*" NO_CPSPLANT_FOUND
*" NO_SISLOC_FOUND
*" NO_INPUT_FOUND
*" VALID_PLANT_NO_CHARACTERISTIC
*" ONE_TO_MANY_ISSUE
*" PLANT_NOT_FOUND_ZDEF_DELPLANT
*" UNKNOWN_ERRORS
FM Name: ZPLANTCLASSIFICATION
Created By : SYUB *
Description : Function Module to retrieve plant characteristics *
The function module has two capabilities:
1. Retrieve only the necessary characteristics
2. Retrieve the whole characteristics into an internal table.
Parameter Description *
In the future, if there is a new characteristic added to the
plant classification tables, the characteristic has to be added
to the list of the export parameters and the loop statement.
TABLES: ausp, cabn, ksml, zdef_delplant.
DATA: ws_objek LIKE ausp-objek,
ws_countchar TYPE i,
ws_countplant TYPE i.
*Internal table for SAP plant
DATA: BEGIN OF int_plant OCCURS 0,
plant LIKE ausp-objek,
END OF int_plant.
*sap plant code is the input parameter.Move objek, atnam, and atwrt to
*internal table PLANTCHAR using inner join of AUSP, CABN, and KSML to
*synch up the internal characteristic numbers throughout the 3 tables.
IF NOT ip_sapplant IS INITIAL.
SELECT auspobjek cabnatnam ausp~atwrt
INTO CORRESPONDING FIELDS OF TABLE int_plantchar
FROM ksml AS ksml
INNER JOIN cabn AS cabn
ON cabnatinn = ksmlimerk
INNER JOIN ausp AS ausp
ON ausp~objek = ip_sapplant
AND auspatinn = cabnatinn
AND ausp~mafid = 'O'
AND ausp~klart = 'Z01'.
*Checking the existence of ip_sapplant in the table, if it doesn't
*exist, raise the exception else if it exists, check if it has
*characteristic values.
IF sy-subrc NE 0.
RAISE no_objek_found.
ELSE.
DESCRIBE TABLE int_plantchar LINES ws_countchar.
IF ws_countchar LT 2.
RAISE valid_plant_no_characteristic.
ENDIF.
ENDIF.
*cps plant code is the input parameter. Move objek from table AUSP to
*ws_objek using inner join of CABN and AUSP to match up the internal
*characteristic numbers from the 2 tables.
ELSEIF NOT ip_cpsplant IS INITIAL.
SELECT ausp~objek
INTO TABLE int_plant
FROM ausp AS ausp
INNER JOIN cabn AS cabn
ON cabn~atnam = 'OLDCODE'
WHERE auspatinn = cabnatinn
AND ausp~mafid = 'O'
AND ausp~klart = 'Z01'
AND ausp~atwrt = ip_cpsplant.
*Checking the existence of ip_cpsplant in the table
IF sy-subrc EQ 0.
*Counting the number of SAP plants in the internal table int_plant
DESCRIBE TABLE int_plant LINES ws_countplant.
*Moving the values of objek, atnam, and atwrt to PLANTCHAR using objek
*from ws_objek.
IF ws_countplant EQ 1.
LOOP AT int_plant.
SELECT auspobjek cabnatnam ausp~atwrt
INTO CORRESPONDING FIELDS OF TABLE int_plantchar
FROM ksml AS ksml
INNER JOIN cabn AS cabn
ON cabnatinn = ksmlimerk
INNER JOIN ausp AS ausp
ON ausp~objek = int_plant-plant
AND auspatinn = cabnatinn
AND ausp~mafid = 'O'
AND ausp~klart = 'Z01'.
ENDLOOP.
*If there more than one SAP Plants, then raise an exception.
ELSEIF ws_countplant GT 1.
RAISE one_to_many_issue.
ENDIF.
ELSE.
SELECT SINGLE werks FROM zdef_delplant
INTO ws_objek
WHERE cpsloc = ip_cpsplant.
SELECT auspobjek cabnatnam ausp~atwrt
INTO CORRESPONDING FIELDS OF TABLE int_plantchar
FROM ksml AS ksml
INNER JOIN cabn AS cabn
ON cabnatinn = ksmlimerk
INNER JOIN ausp AS ausp
ON ausp~objek = ws_objek
AND auspatinn = cabnatinn
AND ausp~mafid = 'O'
AND ausp~klart = 'Z01'.
if sy-subrc ne 0.
raise plant_not_found_zdef_delplant.
endif.
ENDIF.
*cps plant code is the input parameter. Move objek from table AUSP to
*ws_objek using inner join of CABN and AUSP to match up the internal
*characteristic numbers from the 2 tables.
ELSEIF NOT ip_sisloc IS INITIAL.
SELECT ausp~objek
INTO TABLE int_plant
FROM ausp AS ausp
INNER JOIN cabn AS cabn
ON cabn~atnam = 'SISLOC'
WHERE auspatinn = cabnatinn
AND ausp~mafid = 'O'
AND ausp~klart = 'Z01'
AND ausp~atwrt = ip_sisloc.
*Checking the existence of ip_sapplant in the table
IF sy-subrc EQ 0.
DESCRIBE TABLE int_plant LINES ws_countplant.
*Moving the values of objek, atnam, and atwrt to PLANTCHAR using objek
*from ws_objek.
IF ws_countplant EQ 1.
LOOP AT int_plant.
SELECT auspobjek cabnatnam ausp~atwrt
INTO CORRESPONDING FIELDS OF TABLE int_plantchar
FROM ksml AS ksml
INNER JOIN cabn AS cabn
ON cabnatinn = ksmlimerk
INNER JOIN ausp AS ausp
ON ausp~objek = int_plant-plant
AND auspatinn = cabnatinn
AND ausp~mafid = 'O'
AND ausp~klart = 'Z01'.
ENDLOOP.
*If there more than one SAP Plants, then raise an exception.
ELSEIF ws_countplant GT 1.
RAISE one_to_many_issue.
ENDIF.
ELSE.
SELECT SINGLE werks FROM zdef_delplant
INTO ws_objek
WHERE sisloc = ip_sisloc.
SELECT auspobjek cabnatnam ausp~atwrt
INTO CORRESPONDING FIELDS OF TABLE int_plantchar
FROM ksml AS ksml
INNER JOIN cabn AS cabn
ON cabnatinn = ksmlimerk
INNER JOIN ausp AS ausp
ON ausp~objek = ws_objek
AND auspatinn = cabnatinn
AND ausp~mafid = 'O'
AND ausp~klart = 'Z01'.
if sy-subrc ne 0.
raise plant_not_found_zdef_delplant.
endif.
ENDIF.
ELSE.
*Checking if there is an input parameter entered.
RAISE no_input_found.
ENDIF.
Modified 7/30 by RFOR to validate SAP plant is in plant master
data: wa_t001w like t001w.
read table int_plantchar.
SELECT SINGLE * from t001w into wa_t001w where
werks = int_plantchar-objek.
if sy-subrc ne 0.
raise NO_OBJEK_FOUND.
endif.
*Moving all the characteristic values to the export parameters
LOOP AT int_plantchar.
MOVE int_plantchar-objek TO ep_sapplant.
CASE int_plantchar-atnam.
WHEN 'OLDCODE'.
MOVE int_plantchar-atwrt TO ep_cpsplant.
WHEN 'SISLOC'.
MOVE int_plantchar-atwrt TO ep_sisloc.
WHEN 'OWNERSHIP'.
MOVE int_plantchar-atwrt TO ep_ownership.
WHEN 'SMISTYPE'.
MOVE int_plantchar-atwrt TO ep_smistype.
WHEN 'SPOTREF'.
MOVE int_plantchar-atwrt TO ep_spotref.
WHEN 'SUBTYPE'.
MOVE int_plantchar-atwrt TO ep_subtype.
WHEN 'SUPPLYREGION'.
MOVE int_plantchar-atwrt TO ep_supplyregion.
WHEN 'TYPE'.
MOVE int_plantchar-atwrt TO ep_type.
WHEN 'DISTAREA'.
MOVE int_plantchar-atwrt TO ep_distarea.
WHEN 'GEOGAREA'.
MOVE int_plantchar-atwrt TO ep_geogarea.
WHEN 'HMF'.
MOVE int_plantchar-atwrt TO ep_hmf.
WHEN 'IATACODE'.
MOVE int_plantchar-atwrt TO ep_iatacode.
WHEN 'IRSTCN'.
MOVE int_plantchar-atwrt TO ep_irstcn.
WHEN 'OPSAREA'.
MOVE int_plantchar-atwrt TO ep_opsarea.
WHEN 'PLANTSTAT'.
MOVE int_plantchar-atwrt TO ep_plantstat.
WHEN 'PORTCODE'.
MOVE int_plantchar-atwrt TO ep_portcode.
WHEN 'REFAREA'.
MOVE int_plantchar-atwrt TO ep_refarea.
WHEN 'SAPTYPE'.
MOVE int_plantchar-atwrt TO ep_saptype.
WHEN 'MFG_WARRANTY'.
MOVE int_plantchar-atwrt TO ep_mfgwarranty.
WHEN 'USER_TYPE'.
MOVE int_plantchar-atwrt TO ep_usertype.
WHEN 'TERMINALCENTER'.
MOVE int_plantchar-atwrt TO ep_trmcenter.
WHEN 'TRANSPORTATIONCENTER'.
MOVE int_plantchar-atwrt TO ep_transcenter.
when 'FEIN'.
move int_plantchar-atwrt to ep_fein.
ENDCASE.
ENDLOOP.
ENDFUNCTION.
Pls help me out from this problem its very urgent.
Thankshi SK ,
process like this .
in BADI
method.
1.Here u have to put ur logic based on the Requirement.
2.then u have to call BTE like this
<b>call function 'OPEN_FI_PERFORM_00001020_E'
tables
t_bseg = xbseg
t_bkpf = xbkpf.</b>
3.Update Ztables.
endmethod.
this is sample logic only.First get logic of TS then u will come to know how to do?
regards
prabhu -
How to put check box in a table format at the out put ? Urgent issue...
Hi,
I am working an assignment to assign multiple roles for multiplr user.
In selection screen we have to enter mutiple EMPNO from ..to
1) in second screen we will get the empno, First name, last name, Position,
From date, To date, Sap user ID, Email id in the table formate with first
column with Check box.
2) In second screen below the table I have to place the multiple roles just like in
the step loop format and below this one Execute button should be there.
If we select the multiple employees or single employee and place the multiple roles or single roles and if I click the execute button then the multiple roles will be assigned to the multiple employees. The empno and roles will come from table and step loop to internal table and the same will pass to the BDC.
For this requirement I prepered recording for Transaction PFCG. But I can't understand how to design the second screen that table format and the step loop format. Can anybody give any idea or any coding to design the second screen.
and how to meet the requirement. This is urgent issue. Good SDN points will be reworded.
Witing for kind response.
Thanks in advance.
BansidharHi upendra
There are slight changes in the sivas code.Where is the data coming into the table.If its from a Model Node then iterate each element of the source node get that value compare and set the corresponding value in the element of the node binded to table.
Create a boolean attribute "select" in the table node and bind it to checked property of the check box.
for(int i=0;i<wdContext.node<tablenode>()..size();i++)
if(wdContext.node<tablenode>().get<tablenode>ElementAt(i).select())
wdContext.node<tablenode>().get<tablenode>ElementAt(i).set<yourattribute>(true);
else
wdContext.node<tablenode>().get<tablenode>ElementAt(i).set<yourattribute>(false);
See the attribute is boolean so pass true or false as a values in setter methods.
Regards
Kalyan -
Hello Everyone,
We all know whenever we try to connect to a PC which is not on network, we get UnKnownHostException etc..... by which we can detect that the corresponding PC is not an network(intranet/internet)
But when i send a msg from my PC to my PC, it works fine even if the network is down. I hv provided my PC's IP address instead of using localhost or 127.0.0.1 which reduces the possibility that the msg will not be traversed thru the network.
Any IDEA how this works.
Is There any possible way by which i can detect that my PC is not on network or the PC to which i'm trying to connect is not on network .......
Pls help me out, its really urgent as to be implemented in my Project
Thanks In Advance
Sahil ShaikhHello Surtee
I have developed a Messeging Service for the eCRM Apllication my company is developing and we r in the final stage of debugging.
Now whenever a user sends a msg to a PC which is not on network, the messaging service automatically sends an Offline mssg to that PC. But know i want ot distinguish wheather the PC to which i'm sending the msg is not on network or am I not on network based on this i need to perform diff. actions, hence i wanted to know that how can i detect .......
Pls see if u canhelp me out ......
Thanks
Sahil Shaikh
Maybe you are looking for
-
NeoOffice wont work in Leopard
The program appears in its menu bar, but all options are dead. You cannot even exit without using the force quit under the apple menu. Any attempts to open a document only results in a blank screen.
-
Macbook pro- OSX lion 10.7.2 fan noise
I just bought a macbook pro laptop, upgraded it to the Lion version, it is now 10.7.2, with processor of 2.7 GHz intel core i7, memory of 8GB, 1333 MHz DDR3. Whenever I am on a program like imovie, safari, iphoto, charging my smartpen...etc.... the f
-
Hi there, can my daughter's ipod be located if her device shares my account (I am connected to icloud) but her ipod is not connected to the icloud??
-
I have used the write jpeg file from intensity but image colours are different
Here are the relevent files for my program. Insert these values x1=218 x2=368 y1=45 y2=45 r=39 in order to run adn crop the pictures I hope someone can help Attachments: 218_368_45_39.jpg 23 KB 2ColourProgram.llb 355 KB
-
Solaris 8 Intel Installation - stuck at initial network setup
Hi ! We installed Solaris 8 Intel (Europe/ger) on a PIII and are stuck in the network config. It asks for systemname, ip,subnet, domain, dns.. (our settings are ok for sure) but when whe click the confirm-button it reads some error message (translate