How to do aging for AR by 0DOC_DATE
Hi to all,
Please can any one tell me, how to aging for Receivables (datasource 0FI_AR_4), by use of BLDAT and SY-SYSTEM date difference.
I knew 0NETDUEDATE is used to find the aging for (datasource 0FI_AR_4).
But I need to use BLDAT (0DOC_DATE) u2013 SYSTEM DATE difference to get bucket.
I shall be thankful to you for this.
Regards
Pavneet Rana
Hi rana,
inorder to pic the sys date you can use the sap standard variable 0DATE or you can create a variable of type replacement path with customer exit and write the below logic for the variable in CMOD to pic the sys date.
IF i_step = 2.
CASE i_vnam.
WHEN 'ZCURDATE'.
CLEAR: l_s_range.
l_s_range-low = sy-datum.
l_s_range-sign = 'I'.
l_s_range-opt = 'EQ'.
APPEND l_s_range TO e_t_range.
ENDCASE.
ENDIF.
Now create one more formula varaible for the 0DOC_DATE with replacement path.
for ex: zdocdate
next create a Kf to cal the difference of days
Diff of days = zCURDATE -zdocdate
now create a Kf where use the logic
KF1 = (diff of days<=10)*0DEBIT_CREDIT_LC
you can rename this Kf as 1-10 days...
create KF2,KF3 ... based on your need.
Hope this helps you
regards
KP
Similar Messages
-
How to do aging for Net Debit for 0DEB_CRE_LC
Hi to all,
i am doing aging for receivables(0FI_AR_4) for Net debit > 0.
I have created CKF excaption aggregation at query level to get Net debit greater than zero, via ( 0DEB_CRE_LC > 0 ) * 0DEB_CRE_LC for every customer.
it gives correct result .
but when i used aging via used of 0NETDUEDATE, for 1-10 and 11-30 bucket and i have restricted bucket with this CKF.
for some customer i get correct result if both debit and credit come is 1-10 bucket and net debit of this > 0.
But if customer debit come in 1-10 bucket and credit in 11-30 bucket it gives incorrect result.
how to do aging for such conditions.
Please can any one provide me solutions.
I shall be thankfull to you for this.
Regards
Pavneet RanaThanks for reply ,
my query format is like that
query rows = region and restricted with region value
query column = aging bucket 1-10 , 11-20, and every bucket is restricted with CKF 0DEB_CRE_LC > 0 and 0NETDUEDATE and division value
and drill down by customer and region
format looks like that
division1 division1 division1 division2 division2 division 2
1 - 10 11 - 20 21-30 1 - 10 11 - 20 21 - 30
Region1
Region2
so report purpose is to calculate aging for NET DEBIT VALUE .
so if i drill down by customer for net debit value, net debit value according to bucket is correct if debit and credit of customer lies in same bucket
and if customer credit and debit comes under different bucket net debit value is incorrect for bucket wise.
and if dont use aging bucket net debit value according to customer and region wise is getting correct , but i need aging also for net debit value.
please can you provide me solutions to get netdebit according to bucket wise for every customer , when drill down.
I shall be thankfull to you for this.
Regards
Pavneet Rana
Edited by: pavneet rana on Feb 7, 2011 3:02 PM -
How to Change Age for my Apple ID?
So I made the mistake of putting my real age in for my Apple ID (below 18) and now I can't get a lot of songs that I would like to purchase because they have some minor swearing in them. Anybody know how I could change the age for my apple ID so I could buy some of these songs/albums? Any help is appreciated.
We really cannot tell you how to alter information that makes it untrue.
-
How to calculate age for a business partner for segmentation purposes?
How do I calculate the age of a BP based on this person's maintained birthday on BP master data? I need to use this information to segment based on age groups, eg age 30-40, age 25 and below etc.
I did quite a bit of search on this forum but couldn't find anything. I know I've seen them somewhere before. Would appreciate any help and will reward points. Thanks!Hi Jo,
You can achieve this by using infosets.
Create Infoset using direct read of table BUT000.
In infoset select extras for additional field button and give following code for calcualting the difference between Birthdate and system date.
CALL FUNCTION 'FIMA_DAYS_AND_MONTHS_AND_YEARS'
EXPORTING
i_date_from = but000-BIRTHDT
I_KEY_DAY_FROM =
i_date_to = sy-datum
I_KEY_DAY_TO =
I_FLG_SEPARATE = ' '
IMPORTING
e_days = test
E_MONTHS =
E_YEARS =
Create a datasource with Business partner GUID and assign it attributelist.
Choose the additional field for filter criteria.
Hope it solves your problem.
Reward points if it helps.
Regards,
Madhu -
How to deactivate asking for age while downloading app
Hello,
I'm frustrated as each time I download an app, iTunes ask me to confirm that I am 17 y.o.
I already give my age when I install the iPhone, and I don't activate the parental control...
Well... What else ?!!! (as somebody well knowne say's;-)
My problem is, that I am reinstalling ALL MY APP(a lot!!!) and I don't want to stay
in front of my screen all night waiting to clic on ''OK'' ! Wich bloc ALL the downloading until
it's done by the way !
How to deactivate asking for age while downloading app PLEASE ?!
Thank you
MARDO83... From France... Grand Pa' with a iPhone 3GS...There is no way to deactivate the functionality. It is specific to certain apps that are being installed. If you do not like it, do not install those apps or find a different device.
-
How to get Text for nodes in Tree Structure
Hi Friends,
How to get Text for nodes in Tree Structure
REPORT YFIIN_REP_TREE_STRUCTURE no standard page heading.
I N I T I A L I Z A T I O N
INITIALIZATION.
AUTHORITY-CHECK OBJECT 'ZPRCHK_NEW' :
ID 'YFIINICD' FIELD SY-TCODE.
IF SY-SUBRC NE 0.
MESSAGE I000(yFI02) with SY-TCODE .
LEAVE PROGRAM.
ENDIF.
class screen_init definition create private.
Public section
public section.
class-methods init_screen.
methods constructor.
Private section
private section.
data: container1 type ref to cl_gui_custom_container,
container2 type ref to cl_gui_custom_container,
tree type ref to cl_gui_simple_tree.
methods: fill_tree.
endclass.
Class for Handling Events
class screen_handler definition.
Public section
public section.
methods: constructor importing container
type ref to cl_gui_custom_container,
handle_node_double_click
for event node_double_click
of cl_gui_simple_tree
importing node_key .
Private section
private section.
endclass.
*& Classes implementation
class screen_init implementation.
*& Method INIT_SCREEN
method init_screen.
data screen type ref to screen_init.
create object screen.
endmethod.
*& Method CONSTRUCTOR
method constructor.
data: events type cntl_simple_events,
event like line of events,
event_handler type ref to screen_handler.
create object: container1 exporting container_name = 'CUSTOM_1',
tree exporting parent = container1
node_selection_mode =
cl_gui_simple_tree=>node_sel_mode_multiple.
create object: container2 exporting container_name = 'CUSTOM_2',
event_handler exporting container = container2.
event-eventid = cl_gui_simple_tree=>eventid_node_double_click.
event-appl_event = ' '. "system event, does not trigger PAI
append event to events.
call method tree->set_registered_events
exporting events = events.
set handler event_handler->handle_node_double_click for tree.
call method: me->fill_tree.
endmethod.
*& Method FILL_TREE
method fill_tree.
data: node_table type table of abdemonode,
node type abdemonode.
types: begin of tree_node,
folder(50) type c,
tcode(60) type c,
tcode1(60) type c,
tcode2(60) type c,
text(60) type c,
text1(60) type c,
text2(60) type c,
end of tree_node.
data: wa_tree_node type tree_node,
t_tree_node type table of tree_node.
wa_tree_node-folder = text-001.
wa_tree_node-tcode = text-002.
wa_tree_node-text = 'Creditors ageing'.
wa_tree_node-tcode1 = text-003.
wa_tree_node-text1 = 'GR/IR aging'.
wa_tree_node-tcode2 = text-004.
wa_tree_node-text2 = 'Bank Balance'.
append wa_tree_node to t_tree_node.
clear wa_tree_node .
wa_tree_node-folder = text-005.
wa_tree_node-tcode = text-006.
wa_tree_node-text = 'Creditors ageing'.
wa_tree_node-tcode1 = text-007.
wa_tree_node-text1 = 'Creditors ageing'.
wa_tree_node-tcode2 = text-008.
wa_tree_node-text2 = 'Creditors ageing'.
append wa_tree_node to t_tree_node.
clear wa_tree_node .
wa_tree_node-folder = text-009.
wa_tree_node-tcode = text-010.
wa_tree_node-text = 'Creditors ageing'.
wa_tree_node-tcode1 = text-011.
wa_tree_node-text1 = 'Creditors ageing'.
wa_tree_node-tcode2 = text-012.
wa_tree_node-text2 = 'Creditors ageing'.
append wa_tree_node to t_tree_node.
clear wa_tree_node .
node-hidden = ' '. " All nodes are visible,
node-disabled = ' '. " selectable,
node-isfolder = 'X'. " a folder,
node-expander = ' '. " have no '+' sign forexpansion.
loop at t_tree_node into wa_tree_node.
at new folder.
node-isfolder = 'X'. " a folder,
node-node_key = wa_tree_node-folder.
clear node-relatkey.
clear node-relatship.
node-text = wa_tree_node-folder.
node-n_image = ' '.
node-exp_image = ' '.
append node to node_table.
endat.
at new tcode .
node-isfolder = ' '. " a folder,
node-n_image = '@CS@'. "AV is the internal code
node-exp_image = '@CS@'. "for an airplane icon
node-node_key = wa_tree_node-tcode.
node-text = wa_tree_node-text .
node-relatkey = wa_tree_node-folder.
node-relatship = cl_gui_simple_tree=>relat_last_child.
endat.
append node to node_table.
at new tcode1 .
node-isfolder = ' '. " a folder,
node-n_image = '@CS@'. "AV is the internal code
node-exp_image = '@CS@'. "for an airplane icon
node-node_key = wa_tree_node-tcode1.
node-relatkey = wa_tree_node-folder.
node-relatship = cl_gui_simple_tree=>relat_last_child.
node-text = wa_tree_node-text1.
endat.
append node to node_table.
at new tcode2 .
node-isfolder = ' '. " a folder,
node-n_image = '@CS@'. "AV is the internal code
node-exp_image = '@CS@'. "for an airplane icon
node-node_key = wa_tree_node-tcode2.
node-relatkey = wa_tree_node-folder.
node-relatship = cl_gui_simple_tree=>relat_last_child.
node-text = wa_tree_node-text2.
endat.
append node to node_table.
endloop.
call method tree->add_nodes
exporting table_structure_name = 'ABDEMONODE'
node_table = node_table.
endmethod.
endclass.
*& Class implementation
class screen_handler implementation.
*& Method CONSTRUCTOR
method constructor.
create object: HTML_VIEWER exporting PARENT = CONTAINER,
LIST_VIEWER exporting I_PARENT = CONTAINER.
endmethod.
*& Method HANDLE_NODE_DOUBLE_CLICK
method handle_node_double_click.
case node_key(12).
when 'Creditors'.
submit YFIIN_REP_CREADITORS_AGING via selection-screen and return.
when 'Vendor'.
submit YFIIN_REP_VENDOR_OUTSTANDING via selection-screen and return.
when 'Customer'.
submit YFIIN_REP_CUSTOMER_OUTSTANDING via selection-screen and
return.
when 'GR/IR'.
submit YFIIN_REP_GRIR_AGING via selection-screen and return.
when 'Acc_Doc_List'.
submit YFIIN_REP_ACCOUNTINGDOCLIST via selection-screen and return.
when 'Bank Bal'.
submit YFIIN_REP_BANKBALANCE via selection-screen and return.
when 'Ven_Cus_Dtl'.
submit YFIIN_REP_VENDORCUST_DETAIL via selection-screen and return.
when 'G/L_Open_Bal'.
submit YFIIN_REP_OPENINGBALANCE via selection-screen and return.
when 'Usr_Authn'.
submit YFIIN_REP_USERAUTHRIZATION via selection-screen and return.
endcase.
endmethod.
endclass.
Program execution ************************************************
load-of-program.
call screen 9001.
at selection-screen.
Dialog Modules PBO
*& Module STATUS_9001 OUTPUT
text
module status_9001 output.
set pf-status 'SCREEN_9001'.
set titlebar 'TIT_9001'.
call method screen_init=>init_screen.
endmodule. " STATUS_9001 OUTPUT
Dialog Modules PAI
*& Module USER_COMMAND_9001 INPUT
text
module user_command_9001 input.
endmodule. " USER_COMMAND_9001 INPUT
*& Module exit_9001 INPUT
text
module exit_9001 input.
case sy-ucomm.
when 'EXIT'.
set screen 0.
endcase.
endmodule.
exit_9001 INPUTyou can read the table node_table with nody key value which imports when docubble click the the tree node (Double clifk event).
Regards,
Gopi .
Reward points if helpfull. -
My iphone 3g is getting really slow. I done full restore ,deleted most apps . Not many photos in my album. i have no videos on my iphone. When taking photo with my iphone it takes ages for camera to open up. Very slow to take photo. Any suggestions? Please help !!!!
Thank you very much for your reply gdgmacguy :) I did all you suggested apart from restore as new device . Didn't know I could do that . After restore I did restore from back up only, as I didn't want to end up without contacts details on my phone. If I restore as new device how do I get my all contacts? Still will have to use back up? Sorry if it sounds like I don't know what i am doing, i just have no one to ask who would know. Thank you
-
Aging for Downpayment paid to vendor -reg
Dear All,
I want to do ageing analysis for Downpayment/Advance paymet, Vendor balance made to the vendors. How can i Do this.
Whether this will tally with the balances of the vendor.
Thanks and Regards,
C.M.SATISH KUMAR.I want whether we can do ageing for the Special GL Down payment account straightaway,rather than doing the ageing via vendor account.
Thanks and Regards,
c.m.sathish kumar
[email protected] -
ABAP-HR MODULE(HOW TO CALCULATE AGE & YEARS OF SERVICE)
HI,
HOW TO CALCULATE AGE & YEARS OF SERVICE means for example
I AM USING PNPCE LDB.
(1) whose age is greater than 52.833 years with 7.833 years of service, with annual rate of pay $170,000 or more, or
(2) age plus employment service is 65 or more, with annual rate of pay of $ 170,000 or more.
Note that the $ 170,000 parameter would be a variable that could change annually when this report would be generated. In the past, age and service value were determined as of the run date. The determination date would also be a variable that would change when the report would be generated.
Thanks&Regards
Rahul.Hi Rahul,
This is the 2nd warning !!! Please... use the correct or most appropriate forum.
The ABAP Objects Forum should be used for: ABAP Object definition and implementation including encapsulation, interfaces and inheritance in ABAP Objects.
This thread will be moved from to .
You're asking this question in two thread, so the duplicated thread will be deleted.
Please have a look at [Forum Rules of Engagement|https://wiki.sdn.sap.com/wiki/display/HOME/RulesofEngagement] before posting.
Also read this thread Welcome and Rules of Engagement.
Greetings,
Marcelo Ramos -
How to calculate age in oracle
Hi,
T was trying do calculate age as on todays date in ORACLE but after a lot of brain storming i didn't get it.
Kindly tell me how to calculate age as in years month days.
For ex.. My DOB- 02-feb-1984 so my age should get as 27 Years 2 months 8 days
How to do it.
I tried this
select
TRUNC( months_between( sysdate, TO_DATE('02-02-1984','DD-MM-YYYY') )/12 ) Year,
TRUNC( mod(months_between( sysdate, TO_DATE('02-02-1984','DD-MM-YYYY') ),12) ) Month,
mod(months_between( sysdate, TO_DATE('02-02-1984','DD-MM-YYYY') ),12) /30 Days
from dual
but days are not calculating correctly...
RGds,
PCsorry..i didn't chck your query..it is right but give wrong answer..
WITH got_months AS
SELECT TO_DATE('02-02-1984','DD-MM-YYYY')
, FLOOR (MONTHS_BETWEEN (SYSDATE, TO_DATE('02-02-1984','DD-MM-YYYY'))) AS months
FROM dual
SELECT TO_DATE('02-02-1984','DD-MM-YYYY')
, TO_CHAR (FLOOR (months / 12)) || ' years, ' ||
TO_CHAR (MOD (months, 12)) || ' months, ' ||
TO_CHAR ( CEIL ( SYSDATE
- ADD_MONTHS ( TO_DATE('02-02-1984','DD-MM-YYYY')
, months
) || ' days'
FROM got_months
o/p
TO_DATE('02-02-1984','DD-MM-YY TO_CHAR(FLOOR(MONTHS/12))||'YE
1 2/2/1984 27 years, 7 months, 9 days
1 day more..1 it sud be.. 2/2/1984 27 years, 7 months, 8 days
if i make correction with add_months like below..
WITH got_months AS
SELECT TO_DATE('02-02-1984','DD-MM-YYYY')
, FLOOR (MONTHS_BETWEEN (SYSDATE, TO_DATE('02-02-1984','DD-MM-YYYY'))) AS months
FROM dual
SELECT TO_DATE('02-02-1984','DD-MM-YYYY')
, TO_CHAR (FLOOR (months / 12)) || ' years, ' ||
TO_CHAR (MOD (months, 12)) || ' months, ' ||
TO_CHAR ( CEIL ( SYSDATE
- ADD_MONTHS ( TO_DATE('02-02-1984','DD-MM-YYYY')
, months
)-1
) || ' days'
FROM got_months
then o/p is..
TO_DATE('02-02-1984','DD-MM-YY TO_CHAR(FLOOR(MONTHS/12))||'YE
1 2/2/1984 27 years, 7 months, 8 days
correct but cdnt understand why sud -1? -
Post Author: SunilKanta
CA Forum: General
Hi,
I am new to crystal reports, i am designing a report i.e cross tab report as shown below,
AGE TABLE
0-5
6-10
11-15
16-20
21-25
26-28
CLASS A Count
7
15
CLASS B Count
7
15
CLASS C Count
109
155
120
96
89
Now my questions are,
How to display age ranges i.e 0-5, 6-10,........?
How to group ages in range and get the count or any summarized value ?
Here i am passing three parameters to the report which are
1. prmLowAge
2. prmHighAge
3. prmAgeBand
Above shown sample is characterised with prmAgeBand = 5, prmLowAge = 0 and prmHighAge = 28.
And if possible please try to find the solution for variable age bands.
Please i am very desperate. Please help me in solving this .Post Author: Ishe
CA Forum: General
You can use a Do...While loop. You can use the funtion below:
LOCAL STRINGVAR AGEGRP;LOCAL NUMBERVAR AGECNT := 0;
DO (AGEGRP := CSTR(AGECNT,0) + '-' + CSTR(AGECNT+5,0);AGECNT := AGECNT + 5)WHILE AGECNT < ;
AGEGRP
Also, you may want to use the following funtion to get , because the formula you were going to use would only compare the year of birth to the current year and ignore the number of months and days difference.
Int(DateDiff("d",{table.BirthDate},CurrentDate)/365) -
Oracle JDeveloper vs. IBM Visual Age for Java
Hi,
I have been out of this forum for quite sometime now.I wanted to know how JDeveloper is doing in general and how is its performance when compared to IBM Visual Age for Java IDE?
Any links to sites related to this would be helpful.
Thanks in advance,
SandeepSandeep,
Be careful while using JDeveloper for developing real time applications. There are very good features in JDeveloper, but this tool is having LOT OF BUG's...you know what I mean. You will end up having sleepness nights later to dig the problems and then to have answer from Oralce, which will always be you better shift to new version. When you will try to shift to new version, lots of earlier classes would have been removed in JDeveloper and then you will be forced to use new ones and take a hit of additional effort.
Otherwise Its a very good tool and can be the no .1 Java IDE, if oracle technical staff work hard and make this product a bit stable.
null -
How to create transaction for a maintenance view, Thank you.
How to create transaction for a maintenance view,
Thank you.
deniz...Hi Deniz,
Go to se93.
Then create the new T.code.
Under that select parameter Transaction.
Then give the sm30 in the t.code in default values tab.
check the checkbox skip initial screen.
in classification tab.
click checkbox inherit gui attributes..
Now below..
In the default values..
select
viewname and give ur table name.
UPDATE= Xsave
view - table name ( Should be upper case
update X ( should be upper case).
http://www.sap-basis-abap.com/sapbs011.htm
Hope this helps you.
Regards,
Viveks -
How does APEX check for null values in Text Fields on the forms?
Hello all,
How does APEX check for null values in Text Fields on the forms? This might sound trivial but I have a problem with a PL/SQL Validation that I have written.
I have one select list (P108_CLUSTER_ID) and one Text field (P108_PRIVATE_IP). I made P108_CLUSTER_ID to return null value when nothing is selected and assumed P108_PRIVATE_IP to return null value too when nothign is entered in the text field.
All that I need is to validate if P108_PRIVATE_IP is entered when a P108_CLUSTER_ID is selected. i.e it is mandatory to enter Private IP when a cluster is seelcted and following is my Pl/SQL code
Declare
v_valid boolean;
Begin
IF :P108_CLUSTER_ID is NULL and :P108_PRIVATE_IP is NULL THEN
v_valid := TRUE;
ELSIF :P108_CLUSTER_ID is NOT NULL and :P108_PRIVATE_IP is NOT NULL THEN
v_valid := TRUE;
ELSIF :P108_CLUSTER_ID is NOT NULL and :P108_PRIVATE_IP is NULL THEN
v_valid := FALSE;
ELSIF :P108_CLUSTER_ID is NULL and :P108_PRIVATE_IP is NOT NULL THEN
v_valid := FALSE;
END IF;
return v_valid;
END;
My problem is it is returning FALSE for all the cases.It works fine in SQL Command though..When I tried to Debug and use Firebug, I found that Text fields are not stored a null by default but as empty strings "" . Now I tried modifying my PL/SQL to check Private_IP against an empty string. But doesn't help. Can someone please tell me how I need to proceed.
ThanksSee SQL report for LIKE SEARCH I have just explained how Select list return value works..
Cheers,
Hari -
How 2 creat report for displaying the details of a Delivery Document using
how to create report for displaying the details of a Delivery Document using the tables LIKP, LIPS
thank you
regards,
jagrut bharatkumar shukla
points will be rewardedHI
I AM GIVING YOU MY DELIVERY DOCUMENT CODE...MODIFY IT ACCORDING TO YOUR REQUIREMENT
*& Report ZDELIVERY *
report zdelivery message-id z9bhu .
types: begin of t_likp,
vbeln type likp-vbeln, "Delivery
erdat type likp-erdat, "Date for rec creation
* LFDAT TYPE LIKP-LFDAT, "Delevery Date
* WAERK TYPE LIKP-WAERK, "Currency
kunnr type likp-kunnr, "Ship-To Party
kunag type likp-kunag, "Sold-to party
traty type likp-traty, "Means-of-Transport
end of t_likp.
types: begin of t_lips,
vbeln type lips-vbeln, "Delivery
posnr type lips-posnr, "Delivery item
matnr type lips-matnr, "Material Number
arktx type lips-arktx, "Short Text for Sales Order Item
lfimg type lips-lfimg, "Actual quantity delivered
netpr type lips-netpr,
* MEINS TYPE LIPS-MEINS, "Base Unit of Measure
vgbel type lips-vgbel, "Doc no of the reference document
end of t_lips.
types: begin of t_vbpa,
vbeln type vbpa-vbeln, "SD DocumenT Number
posnr type vbpa-posnr, "Item number
parvw type vbpa-parvw, "Partner function
kunnrb type vbpa-kunnr, "Customer Number 1
end of t_vbpa.
types: begin of t_kna1,
kunnr type kna1-kunnr, "Customer Number 1
name1 type kna1-name1, "Name 1
ort01 type kna1-ort01, "City
adrnr type kna1-adrnr, "Address
end of t_kna1.
types: begin of t_li_vbpa,
vbeln type likp-vbeln, "Delivery
erdat type likp-erdat, "Date for rec creation
* LFDAT TYPE LIKP-LFDAT, "Delevery Date
* WAERK TYPE LIKP-WAERK, "Currency
kunnr type likp-kunnr, "Ship-To Party
kunag type likp-kunag, "Sold-to party
traty type likp-traty, "Means-of-Transport
vbeln1 type lips-vbeln, "Delivery
posnr type lips-posnr, "Delivery item
matnr type lips-matnr, "Material Number
arktx type lips-arktx, "Short Text for Sales Order Item
lfimg type lips-lfimg, "Actual quantity delivered
netpr type lips-netpr, "Net Price
* MEINS TYPE LIPS-MEINS, "Base Unit of Measure
vgbel type lips-vgbel, "Doc no of the reference document
vbeln3 type vbpa-vbeln, "SD DocumenT Number
parvw type vbpa-parvw, "Partner function
kunnrb type vbpa-kunnr, "Customer Number 1
end of t_li_vbpa.
types: begin of t_final,
vbeln type likp-vbeln, "Delivery
erdat type likp-erdat, "Date for rec creation
kunnr type likp-kunnr, "Ship-To Party
kunag type likp-kunag, "Sold-to party
traty type likp-traty, "Means-of-Transport
vbeln1 type lips-vbeln, "Delivery
posnr type lips-posnr, "Delivery item
matnr type lips-matnr, "Material Number
arktx type lips-arktx, "Short Text for Sales Order Item
lfimg type lips-lfimg, "Actual quantity delivered
netpr type lips-netpr, "Net Price
vgbel type lips-vgbel, "Doc no of the reference document
vbeln3 type vbpa-vbeln, "SD DocumenT Number
parvw type vbpa-parvw, "Partner function
kunnrb type vbpa-kunnr, "Customer Number 1
name1 type kna1-name1, "Name 1
ort01 type kna1-ort01, "City
adrnr1 type kna1-adrnr, "Address
name2 type kna1-name1, "Name 1
ort02 type kna1-ort01, "City
adrnr2 type kna1-adrnr, "Address
name3 type kna1-name1, "Name 1
ort03 type kna1-ort01, "City
adrnr3 type kna1-adrnr, "Address
end of t_final.
* D A T A D E C L A R A T I O N
*&*********Internal Table Declaration****************&*
data: it_likp type standard table of t_likp.
data: it_lips type standard table of t_lips.
data: it_vbpa type standard table of t_vbpa.
data: it_kna1 type standard table of t_kna1.
data: it_li_vbpa type standard table of t_li_vbpa.
data: it_li_vbpa_temp type standard table of t_li_vbpa.
data: it_final type standard table of t_final.
*&*********Work Area Declaration********************&*
data: wa_likp type t_likp.
data: wa_lips type t_lips.
data: wa_vbpa type t_vbpa.
data: wa_kna1 type t_kna1.
data: wa_li_vbpa type t_li_vbpa.
data: wa_li_vbpa_temp type t_li_vbpa.
data: wa_final type t_final.
*&*********Data Declaration************************&*
data: d_vbeln type likp-vbeln.
data: flag type i value 0.
* S E L E C T I O N S C R E E N D E C L A R A T I O N
selection-screen begin of block block2 with frame title text-001.
select-options: s_vbeln for d_vbeln obligatory. "Delivery no
selection-screen end of block block2.
* A T S E L E C T I O N - S C R E E N E V E N T S
*AT SELECTION-SCREEN.
*PERFORM VALIDATE_DATA.
* S T A R T O F S E L E C T I O N E V E N T S
start-of-selection.
perform fetch_data.
perform merge_data_kna1.
*INCLUDE Z9BT_SH_***4_FORMS.
call function 'OPEN_FORM'
exporting
* APPLICATION = 'TX'
* ARCHIVE_INDEX =
* ARCHIVE_PARAMS =
device = 'PRINTER'
* DIALOG = 'X'
* FORM = ' '
language = sy-langu
* OPTIONS =
* MAIL_SENDER =
* MAIL_RECIPIENT =
* MAIL_APPL_OBJECT =
* RAW_DATA_INTERFACE = '*'
* SPONUMIV =
* IMPORTING
* LANGUAGE =
* NEW_ARCHIVE_PARAMS =
* RESULT =
exceptions
canceled = 1
device = 2
form = 3
options = 4
unclosed = 5
mail_options = 6
archive_error = 7
invalid_fax_number = 8
more_params_needed_in_batch = 9
spool_error = 10
codepage = 11
others = 12
if sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
endif.
sort it_final by vbeln.
loop at it_final into wa_final.
call function 'START_FORM'
exporting
* ARCHIVE_INDEX =
form = 'Z9BT_DELIVERY'
language = sy-langu
* STARTPAGE = ' '
* PROGRAM = ' '
* MAIL_APPL_OBJECT =
* IMPORTING
* LANGUAGE =
exceptions
form = 1
format = 2
unended = 3
unopened = 4
unused = 5
spool_error = 6
codepage = 7
others = 8
if sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
endif.
call function 'WRITE_FORM'
exporting
element = 'ITEM_LIST'
function = 'SET'
type = 'BODY'
window = 'MAIN'
* IMPORTING
* PENDING_LINES =
* EXCEPTIONS
* ELEMENT = 1
* FUNCTION = 2
* TYPE = 3
* UNOPENED = 4
* UNSTARTED = 5
* WINDOW = 6
* BAD_PAGEFORMAT_FOR_PRINT = 7
* SPOOL_ERROR = 8
* CODEPAGE = 9
* OTHERS = 10
if sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
endif.
call function 'END_FORM'
* IMPORTING
* RESULT =
exceptions
unopened = 1
bad_pageformat_for_print = 2
spool_error = 3
codepage = 4
others = 5
if sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
endif.
endloop.
call function 'CLOSE_FORM'
* IMPORTING
* RESULT =
* RDI_RESULT =
* TABLES
* OTFDATA =
exceptions
unopened = 1
bad_pageformat_for_print = 2
send_error = 3
spool_error = 4
codepage = 5
others = 6
if sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
endif.
*& Form VALIDATE_DATA
* text
* --> p1 text
* <-- p2 text
form validate_data .
select single vbeln into wa_likp-vbeln
from likp where vbeln in s_vbeln.
append wa_likp to it_likp.
if sy-subrc <> 0.
flag = 1.
endif.
endform. " VALIDATE_DATA
*& Form FETCH_DATA
* text
* --> p1 text
* <-- p2 text
form fetch_data .
select a~vbeln
a~erdat
a~kunnr
a~kunag
a~traty
b~vbeln
b~posnr
b~matnr
b~arktx
b~lfimg
b~netpr
b~vgbel
c~vbeln
c~parvw
c~kunnr
into table it_li_vbpa
from likp as a
left outer join lips as b on a~vbeln = b~vbeln
inner join vbpa as c on b~vgbel = c~vbeln
where a~vbeln in s_vbeln and
c~parvw = 'RE'.
endform. " FETCH_DATA
*& Form MERGE_DATA_KNA1
* text
* --> p1 text
* <-- p2 text
form merge_data_kna1 .
if it_li_vbpa[] is not initial.
it_li_vbpa_temp[] = it_li_vbpa[].
sort it_li_vbpa_temp by kunnr.
delete adjacent duplicates from it_li_vbpa_temp comparing kunnr.
loop at it_li_vbpa into wa_li_vbpa.
read table it_li_vbpa_temp into wa_li_vbpa_temp with key kunnr =
wa_li_vbpa-kunag.
if sy-subrc <> 0.
wa_li_vbpa_temp = wa_li_vbpa.
append wa_li_vbpa_temp to it_li_vbpa_temp.
endif.
read table it_li_vbpa_temp into wa_li_vbpa_temp with key kunnr =
wa_li_vbpa-kunnrb.
if sy-subrc <> 0.
wa_li_vbpa_temp = wa_li_vbpa.
append wa_li_vbpa_temp to it_li_vbpa_temp.
endif.
endloop.
endif.
if it_li_vbpa_temp[] is not initial.
select kunnr
name1
ort01
adrnr into table it_kna1 from kna1
for all entries in it_li_vbpa_temp
where kunnr = it_li_vbpa_temp-kunnr.
endif.
loop at it_li_vbpa into wa_li_vbpa .
wa_final-vbeln = wa_li_vbpa-vbeln.
wa_final-erdat = wa_li_vbpa-erdat.
*it_final-LFART = it_li_vbpa-LFART.
wa_final-kunnr = wa_li_vbpa-kunnr.
wa_final-kunag = wa_li_vbpa-kunag.
*it_final-VSTEL = it_li_vbpa-VSTEL.
wa_final-traty = wa_li_vbpa-traty.
wa_final-vbeln1 = wa_li_vbpa-vbeln.
wa_final-posnr = wa_li_vbpa-posnr.
wa_final-matnr = wa_li_vbpa-matnr.
wa_final-arktx = wa_li_vbpa-arktx.
wa_final-lfimg = wa_li_vbpa-lfimg.
wa_final-netpr = wa_li_vbpa-netpr.
*wa_final-GEWEI = it_li_vbpa-GEWEI.
*it_final-VOLUM = it_li_vbpa-VOLUM.
*it_final-VOLEH = it_li_vbpa-VOLEH.
wa_final-vgbel = wa_li_vbpa-vgbel.
wa_final-vbeln3 = wa_li_vbpa-vbeln.
*wa_final-PARVW = wa_li_vbpa-PARVW.
wa_final-kunnrb = wa_li_vbpa-kunnrb.
read table it_kna1 into wa_kna1 with key kunnr = wa_li_vbpa-kunnr.
if sy-subrc = 0.
wa_final-name1 = wa_kna1-name1.
wa_final-ort01 = wa_kna1-ort01.
wa_final-adrnr1 = wa_kna1-adrnr.
endif.
read table it_kna1 into wa_kna1 with key kunnr = wa_li_vbpa-kunag.
if sy-subrc = 0.
wa_final-name2 = wa_kna1-name1.
wa_final-ort02 = wa_kna1-ort01.
wa_final-adrnr2 = wa_kna1-adrnr.
endif.
read table it_kna1 into wa_kna1 with key kunnr = wa_li_vbpa-kunnrb.
if sy-subrc = 0.
wa_final-name3 = wa_kna1-name1.
wa_final-ort03 = wa_kna1-ort01.
wa_final-adrnr3 = wa_kna1-adrnr.
endif.
append wa_final to it_final.
clear wa_final.
endloop.
endform.
Maybe you are looking for
-
PO order comfirmation and reminders print out
Hi friends please let me know, PO order comfirmation and reminders print out can we get in sap mm, Regards, Balakrishna R.V
-
Hi all, I created a template project and, when i try to open a new project as a copy of this template, the system gives me the following error (TR742): Specify the package or flag it as a local object. The path is: solar_project_admin - selection of
-
Hi, I have one issue in control recipe. I have three process instruction categories assigned to one control recipe destination. Now when i am releasing process order only two instruction categories are copying into process order phases. Could you ple
-
How to install OS9 in OSX with OS9 disk?
I just got a G4 with OSX installed and no disks I want to load OS9 for classic support with the OS9 disk I own. Do I need to do anything special to install? All the forums mention the OSX disk which wasn't included in the purchase I made. I don't sup
-
CS4 Issue with Windows 7 [edited by host]
Hi there I entered the serial number on my new system windows 7 ...windows xp and old system died... received some help to a link for setting up my new computer with the CS4 and everything went find and the serial number loaded and was able to open