PO Amendment Data
Hi everybody,
When PO (Purchase Order) amendment is done, e.g. deli. date change, price change, incoterm change, item deletion etc., So can you Please tell me that these changes get store where exactly? Or how to see these changes So that we can use that data in the Report or Script to display in the output, e.g. deli. date changed From <...> To <...>, etc.
Kinldy Reply.
Thanks Dzed Maroz, for your instant response and help. Actully I know these tables. BUT Problem is that there are so many reasons for an amendment of PO. And I want to call the every type of changed data in script output, through ME9F. So should I write and compare for the all cases..for each type of change...and then pass the values to the script ..OR.....write the Subroutine in script and get the amendment-data from one External proram to script .or what else to do......Kindly Suggest.
Thanks..
Similar Messages
-
How can I show the last amend date of the .rpt file on my report?
I want to show the last amendment date of the .rpt file on my report.
Modification date and time refer to the actual report rather than the .rpt file.
Does anyone have any suggestions? I am using version 11.2.
Thanks,
Anne-Marieannemarier,
Have you tried the "Modification Date" or "Modification Time" fields located under the Special Fields section of the Field Explorer?
I've never used them, but they seem like good candidates.
Jason -
Please help in purchases order amendment dates
please help me in purchase order amendment date
how to maintain this and how it will be reflect in invoice...Hi!
If you wanted to create an own search help for that field, just go to SE11 transaction, and create a new search help.
Join your Z-table with the customer table and create a view. Use this view in your new search help.
Regards
Tamá -
Dear Sir,
We have Make-To-Order scenario . Our BOM is multilevel one . We are required to develop a Report showing the details related to Changes Made in the BOM during a Period .
The Report contain the information :
Item Code , Old Quantity , Amended Quantity , Amendment Date
I request SAP experts to kindly guide me as how to develop such a Report please .
With Thanks and Regards
S M MittalPL refer two tables CDHRD and CDPOS
Input for CDHRD is
Object name is client number,BOM type,BOM number - example 070M00000006.
You will get the details of BOM type and BOM number in MAST.
from CDHRD you will get Document number which you have to pass it to CDPOS to get the data of component changed.
In STPO if you enter the data, you will get the details of item
table key-XXXMYYYYYYAAAAAAABBBBBB
XXX client number
M - BOM type- STPO-STLTY
YYYYYY - STPO-STLNR
AAAAAAA - STPO-STLKN
BBBBBB - STPO-STPOZ
I hope you got it, if required come back -
Autonomous transactions not seeing posted data
I want to add a button to a form to call a report. The users want to update data in the form, run the report then decide if the data is to be committed. I can post the changed data but the report doesn't see the posted data as Oracle starts a new session.
The report performs various calculations and before it is run, the calculations are performed and data extracted to separate tables, the report then runs on the extracted data then the temporary table data is deleted.
I thought autonomous transactions would be my solution. The data is posted within forms, the form then calls a database procedure which has the autonomous procedure declared, data extracted and committed to the temporary tables within the autonomous transaction (form data stays uncommitted), report runs using the extracted data. User could then decide if the amended data could then be committed to the database.
The autonomous transaction does not seem to see the posted data. The procedure picks up the data 'pre post'. Any ideas on what I can do to get round this?
Thanks in advance
Karen StalkerThanks for all the replies.
My form that will call the report can call up to 12 other forms with data always posted and never committed until the user is prompted to on leaving the main form, or the user presses the commit key. I liked the idea of writing to a temporary table but the way this application is designed, this would mean a big rewrite of a lot of complicated forms. I would rather leave them alone as they work!!
I could pass the record groups into the report - this would mean about 15 groups but that shouldn't be a problem except that there are a few child queries which I read can't be done that way. This may be a daft question but can I pass the record groups into the report and the record groups be then used in the after parameter trigger. There I could do all the necessary complications, write to my extract tables and then carry on as normal - i.e. the report gets the data from these extract tables.
My best solution would be to get the reports and forms to run in the same session but how can I do this? As far as I'm aware, RUN_REPORT_OBJECT starts a new session. Hopefully someone knows how to get them in the same session.
Thanks again
Karen -
Hi, I need a sql query based on po amendment and need the following records
VEND NAME
SITE
VEND CODE
PO_DATE
PO_NO
Destination Inventory
IT CODE
DESC
AMEND DATE
OLD QTY
NEW QTY
Receipt Qty
Balance Qty
RATE
currency
Curr. Rate
Need By Date
Promised Date
STD COST
AMEND VALUE
Closed code
Created By
Approved By
Authorization Status
Pls. help?So what problem are you having doing that?
Re: 2. How do I ask a question on the forums? -
Date stamps appearing incorrectly on ios
Hi there
Ive been going through my newly converted library organising things and adding a few more photos. Ive recently added a bunch of old black and white scanned photos which I gave a date of 1800 just so they'd appear at the top of my list (and perhaps Id eventually find the correct dates). it all looks correct when viewed in photos on my mac, however when view on iOS the photos don't have their amended dates . Am i doing something wrong or is this a bug?
many thanks for any help!
NickI've just realised - there's nothing at all showing up before 2000 on any of my iOS devices! There's not some kind of Y2K bug going on here is there?! (I'm half joking/half serious)
Perhaps somebody could confirm that photos before the year 2000 are appearing in there iOS devices just to put that idea to rest? -
All EXIF dates, both from old and new imports are displayed as 05-01-07 in the EXIF-display. Can't see the correct EXIF date and can't get rid of the fixed date. However Aperture does read the correct date if I use the separate date/month/year box. This is less convenient because in the date box the time is normally also displayed. All my images are referenced RAW's (canon 1dmarkII). Is there a way to reset this???? Thanks
Message was edited by: BartPhoto1. If I use better finder attributes 5 - will the grey date (1980-1985) go away once I import the batch of photos with the correct amended date ?
Possibly, but another thing to try:
Select all the photos in an Event. Flag Them. Then go 'Create Event from Flagged Photos'
2. Is better finder attributes 5 the simpliest and easiest exif editor to use in conjuntion with iphoto ?
No, iPhoto is. And if it involves exporting from iPhoto, running the program and then re-importing that's hardly "in conjunction with iPhoto"
3 Is there any exifdate editor that works within iphoto - once you have photo's in the event section of iphoto with the wrong date ?
Apart from iPhoto no. The problem here is simply that the database is not rechecking the dates on the photos as you update them, and then updating the Event dates. Creating a new Event from the same photos should force that correction.
Regards
TD -
Exif date change within iphoto11 -which is the most user friendly editor ?
Hi I am newbie - prior to addressing this question -I have read numerous posts to try and find a solution to this problem but am still unsure as how to resolve it - I transferred a number of photo''s from PC to Mac when I purchased the Mac earlier this year - the iphoto events do not reflect the folders in chronological date that I had in picasa - - it seems that iphoto categorize events (even if unnamed) according to exifdata -
The problem I am faced with is that by way of example - although a folder has been titled December 23 2006( and is reflected as an event) - the date reflected in iphoto is January 1 1980 - December 31 2005 (according to erroneous data transfer / incorrect date on the camera (possibly the default date)---- these dates can be seen in grey to the bottom left of the named event which is December 23 2006(when you run your mouse beneath the event title (or unnamed event)
I tried to change the date , by adjusting the date within iphoto and doing batch change - the problem is that while I have appeared to change the date - the grey dates (1980-1985) remain - I have tried to research an exif editor that would do this - I found better finder attributes 5 - which I have not yet purchased - According to the website of better finder attributes 5 -it seems that if photo's are already in iphoto with the incorrect exif date date - then you need to export the photo's you are attempting to correct -then run better finder attributes 5 -change the exif information and then import them back into iphoto with the correct date
my questions
1. If I use better finder attributes 5 - will the grey date (1980-1985) go away once I import the batch of photos with the correct amended date ?
2. Is better finder attributes 5 the simpliest and easiest exif editor to use in conjuntion with iphoto ?
3 Is there any exifdate editor that works within iphoto - once you have photo's in the event section of iphoto with the wrong date ?
Any advice would be most appreciated
Thanks1. If I use better finder attributes 5 - will the grey date (1980-1985) go away once I import the batch of photos with the correct amended date ?
Possibly, but another thing to try:
Select all the photos in an Event. Flag Them. Then go 'Create Event from Flagged Photos'
2. Is better finder attributes 5 the simpliest and easiest exif editor to use in conjuntion with iphoto ?
No, iPhoto is. And if it involves exporting from iPhoto, running the program and then re-importing that's hardly "in conjunction with iPhoto"
3 Is there any exifdate editor that works within iphoto - once you have photo's in the event section of iphoto with the wrong date ?
Apart from iPhoto no. The problem here is simply that the database is not rechecking the dates on the photos as you update them, and then updating the Event dates. Creating a new Event from the same photos should force that correction.
Regards
TD -
Dynamic Value in where cluase..Ideas please..
Hi All,
Wishes.. Any idea for below problem Please..
Fields in Form 1:
CONTROL PO FACTOR TS_LAST_UPDATE AMEND
19950927 739409 SPP 19-JUN-98 00
19950927 739409 SPP 19-JUN-98 01
19950927 739409 SPP 19-JUN-98 03
19950927 739409 SPP 19-JUN-98 04
19950927 739409 SPP 19-JUN-98 05
19950927 739409 SPP 19-JUN-98 06
19950927 739409 SPP 19-JUN-98 07
19950927 739409 SPP 19-JUN-98 08
19950927 739409 SPP 19-JUN-98 09
19950927 739409 SPP 19-JUN-98 10
19950927 739409 SPP 19-JUN-98 11 Form 2 Fields:
PAYMENTDATE AMOUNT TS_LAST_UPDATE
01-JAN-96 88225 19-JUN-98
01-JAN-96 7801 19-JUN-98
01-JAN-96 29895 19-JUN-98
01-JAN-96 33065 19-JUN-98
01-JAN-96 63822 19-JUN-98
01-JAN-96 7615 19-JUN-98
01-JAN-96 20168 19-JUN-98
01-JAN-96 13514 19-JUN-98
01-JAN-96 7287 19-JUN-98
01-JAN-96 23919 19-JUN-98 In this Control,PO,Amend will pass as parameter to form B when I click the button on Form 1
Now I would like to design a dynamic query in such a way that.. what ever ther "amend" user passes from form1 IT SHOULD PASS AS MINIMUM 'AMEND' FOR THAT CONTROL.
Best way to put in above example from Form A , user passes 19950927 as Control,739409 as Po and *02* as Amend THEN AMEND SHOULD BE PASSED AS '00' which is minimum amend number for that Control then i should execute the query for target table on form2 and should display all the payments irrespctive of amendno that has been passed.
This is due to special requirement as there is no amend data in Table2 (used in form2) but which was present in Table1 in (used in form1)., so we mass updated Table2 amend with minimum amend in Table1.
and same way if user passes 19950927 as Control,739409 as Po and *03* as Amend THEN AMEND SHOULD BE PASSED AS '00' which is minimum amend number for that Control and then i should execute the query for target table on form2.
Same way what ever amend no the user passes it should be passed as minimum amendno for that control ---> ---> execute query..on form 2
I am thinking of dynamic where clause..dont know what logic i should use here..
any code suggestions in this context please..
Thanks in advance
Prasanth
Edited by: Onenessboy on Nov 1, 2010 9:39 AM
Edited by: Onenessboy on Nov 1, 2010 9:50 AM (changes in data provided)
Edited by: Onenessboy on Nov 1, 2010 10:01 AMHi All,
Thanks for all your repilies..
Andreas Weiden, sorry..I should be much clearer in explaing what I need..I am just explaining again below..
Amman Ahmad, thanks for your suggestion.. your understanding is bit closer... sorry that my explaination was not better..
Here I will try explain with a scenario from database level... and then to form level
Table1:
select *
from table1
where control = '19950927'
and po = '739409'
and factor = 'SPP'
*So here if you look below same control + PO having multiple amend values*
CONTROL PO AMEND FACTOR ID
19950927 739409 00 SPP 002
19950927 739409 01 SPP 002
19950927 739409 02 SPP 002
19950927 739409 03 SPP 002
19950927 739409 04 SPP 002
19950927 739409 05 SPP 002
19950927 739409 06 SPP 002
another example:
CONTROL PO AMEND FACTOR ID
19950928 739419 07 SPP 002
19950928 739419 08 SPP 002
19950928 739419 09 SPP 002
19950928 739419 10 SPP 002
19950928 739419 11 SPP 002
19950928 739419 12 SPP 002
19950928 739419 13 SPP 002 Before update in Table 2(Payments):
See below amend is NULL in table 2 for older records
select *
from table2
where control = '19950927'
and po = '739409'
and factor = 'SPP'
CONTROL PO FACTOR PAYMENTDATE TYPE AMOUNT TS_LAST_UPDATE AMEND
19950927 739409 SPP 01-JAN-96 T 88225 19-JUN-98
19950927 739409 SPP 01-JAN-96 T 99593 19-JUN-98
19950927 739409 SPP 01-JAN-97 T 7801 19-JUN-98
19950927 739409 SPP 01-JAN-97 T 29895 19-JUN-98
19950927 739409 SPP 01-JAN-97 T 33065 19-JUN-98
19950927 739409 SPP 01-JAN-97 T 63822 19-JUN-98
select *
from table2
where control = '19950928'
and po = '739419'
and factor = 'SPP'
CONTROL PO FACTOR PAYMENTDATE TYPE AMOUNT TS_LAST_UPDATE AMEND
19950928 739419 SPP 01-JAN-96 T 84544 19-JUN-98
19950928 739419 SPP 01-JAN-96 T 91783 19-JUN-98
19950928 739419 SPP 01-JAN-97 T 7801 19-JUN-98
19950928 739419 SPP 01-JAN-97 T 2947 19-JUN-98
19950928 739419 SPP 01-JAN-97 T 3345 19-JUN-98
19950928 739419 SPP 01-JAN-97 T 6782 19-JUN-98
*So seeing above we understand that, we cannot really pick which amount is for which Amend since there is no DATA for amend
is available*
* for future records we didnt really bother as we added the column newly making it not null all future will have specific amount
for each amend..that is not the issue here *
Update Statement:
* so we are issuing below update Table2 to set minimum of amend from Table1 will be updated for coresponding records
in Table2 so Now we will able able to build a mandatory relationship between these two. Mandatory here means..
Table1.control=Table2.control
Table1.PO=Table2.PO
Table1.factor=Table2.factor
Table1.amend=Table2.amend *
Update Table2 set po=(select min(amend)from Table1
where Table2.control=Table1.control
AND
Table2.PO=Table1.PO
AND
Table2.factor=Table1.factor)
WHERE
Table2.control= '19950927'
AND
Table2.PO = '739409'
AND Table2.factor = 'SPP'
Update Table2 set po=(select min(amend)from Table1
where Table2.control=Table1.control
AND
Table2.PO=Table1.PO
AND
Table2.factor=Table1.factor)
WHERE
Table2.control= '19950928'
AND
Table2.PO = '739419'
AND Table2.factor = 'SPP'
After Update(Table2-Payments):
select *
from Table2
where control = '19950927'
and PO ='739409'
and factor = 'SPP'
CONTROL PO FACTOR PAYMENTDATE TYPE AMOUNT TS_LAST_UPDATE AMEND
19950927 739409 SPP 01-JAN-96 T 88225 19-JUN-98 00
19950927 739409 SPP 01-JAN-96 T 99593 19-JUN-98 00
19950927 739409 SPP 01-JAN-97 T 7801 19-JUN-98 00
19950927 739409 SPP 01-JAN-97 T 29895 19-JUN-98 00
19950927 739409 SPP 01-JAN-97 T 33065 19-JUN-98 00
19950927 739409 SPP 01-JAN-97 T 63822 19-JUN-98 00
select *
from Table2
where control = '19950928'
and PO ='739419'
and factor = 'SPP'
CONTROL PO FACTOR PAYMENTDATE TYPE AMOUNT TS_LAST_UPDATE AMEND
19950928 739419 SPP 01-JAN-96 T 84544 19-JUN-98 07
19950928 739419 SPP 01-JAN-96 T 91783 19-JUN-98 07
19950928 739419 SPP 01-JAN-97 T 7801 19-JUN-98 07
19950928 739419 SPP 01-JAN-97 T 2947 19-JUN-98 07
19950928 739419 SPP 01-JAN-97 T 3345 19-JUN-98 07
19950928 739419 SPP 01-JAN-97 T 6782 19-JUN-98 07
Interpretation of above output:
1. see for second example CONTROL 19950928 updated with '07' as it is minimum amend number in Table 1 for this combination
of Control(19950928)+PO(739419)
2. Same way see for second example CONTROL 19950928 updated with '07' as it is minimum amend number in Table 1 for this combination
of Control(19950928)+PO(739419)
NOW COMING TO ACTUAL FORMS:
1. User passes Control + PO + Amend + Factor from Form1 to form2(which is based on Table1)
In above example... if user passes combination of 19950927 (control) + 739409 (its PO)+ SPP (factor) + 00 (amend, this
is the value after update in Table2..i.e the minimum amend
Now Payment block in Form 2 display all records as all payment records mapped to amend '00'
2. another example if user passes combination of 19950928 (control) + 739419 (its PO)+ SPP (factor) + 07 (amend, this
is the value after update in Table2..i.e the minimum amend
Till this pefectly fine...
NOW LIMITATION IS:
User can have choice of selecting any amend from Table1 as it is there in Table1 already...
Now example..
In above example... if user passes
combination of 19950927 (control) + 739409 (its PO)+ SPP (factor)+ 02 (which is not minimum
for this control and not in table2 after update)
NOW IT IS DISPLAYING BLANK RECORDS IN PAYMENT SECTION IN FORM 2 as there is mapping is failed
Passed parameter is:
19950927(control) + 739409 (its PO)+ SPP (factor)+ 02 (amend) (match failed)
OR
19950928(control) + 739419 (its PO)+ SPP (factor)+ 09 (amend) (match failed)
But It should be
19950927(control) + 739409 (its PO)+ SPP (factor)+ 00 (amend)
(match passed as we updated all payment rec with amend as minimum amend 00
In this case it will fecth all the payment records.
OR
19950928(control) + 739419 (its PO)+ SPP (factor)+ 07 (amend)
(match passed as we updated all payment rec with amend as minimum amend 77
In this case it will fecth all the payment records.
NOW WHAT CUSTOMER WANTS
So what I need to do is : even if customer passes the below combination..
19950927(control) + 739409 (its PO)+ SPP (factor)+ 02 (amend) from Form 1
or
19950928(control) + 739419 (its PO)+ SPP (factor)+ 09 (amend)
IT SHOULD GO TO FORM 2 as 19950927(control) + 739409 (its PO)+ SPP (factor)+ 00 (amend)-- since table2 has 00(amend) for all records after update
19950928(control) + 739419 (its PO)+ SPP (factor)+ 07 (amend)-- since table2 has 07(amend) for all records
SO THAT IT WILL FOUND DATA MATCH AND PULL UP ALL RECORDS OF PAYMENTS AS IT PASSED THE AMEND WHICH IS ACTUALLY IN TABLE2
Customer is agreed that for older records, if he can see all payments amounts irrespective of amend which he passes to form2
*But User does not really know which is minimum amend for this combination..BUT As programmer, I need to do programatically
what ever amend he selects on form1 it should be passed as value which is in table2.. i mean 00 and 07 in above cases*
Sorry for long post..
Though I am under pressure to finish this soon..I cant really say its URGENT and help me..BECAUSE THIS IS HELPING FORUMS AND IT NOT GOOD MANNERS TO PULL FOR RUSH.
Any help would be appreciated..
Thanks much for all forum member in advance for nice help and suggestions...
Best Regards
Prasanth -
Problem in ALV report o/p to Excel
Hi to all
I have developed an ALV report, which is showing correct display and out put.
But when I am downloading it to excel, o/p is not coming in proper way. Fields are misplaced from there actual place and not in readable condition.
Please guide me..
Regards
AnubhavHello Lakshmiraj
I am sending you the coding of my ALV report program.
Please check.
REgards
Anubhav
*& Report YRMR033_AMENDMENT_ORDER_LIST
*& DEVELOPER : ANUBHAV GUPTA
*& DATE : 21.03.2008
*& REPORT DESCRIPTION : REPORT TO DISPLAY AMENDMENTS IN PURCDHASE ORDERS
WITH OLD VALUES AND NEW VALUES.
REPORT YRMR033_AMENDMENT_ORDER_LIST LINE-SIZE 132 NO STANDARD PAGE HEADING
LINE-COUNT 065(001)
MESSAGE-ID VR.
TABLES: DD04T,
CDHDR,
CDPOS,
DD03L,
DD41V,
T685T,
VBPA,
TPART,
KONVC,
EKKO.
TABLES : NAST, LFA1,ekpo.
SELECT-OPTIONS: "XUDATE FOR nast-erdat OBLIGATORY, "Created on date
XUDATE FOR CDHDR-UDATE OBLIGATORY, "Amendment date
S_EKGRP FOR EKKO-EKGRP,
s_lifnr for ekko-lifnr.
SELECTION-SCREEN SKIP.
DATA: WFLAG,
WCHANGENR LIKE CDHDR-CHANGENR.
DATA: INDTEXT(60) TYPE C.
DATA: BEGIN OF ICDHDR OCCURS 50.
INCLUDE STRUCTURE CDHDR.
DATA: END OF ICDHDR.
DATA: BEGIN OF ICDSHW OCCURS 50.
INCLUDE STRUCTURE CDSHW.
DATA: END OF ICDSHW.
DATA: BEGIN OF EKKEY,
EBELN LIKE EKET-EBELN,
EBELP LIKE EKET-EBELP,
ETENR LIKE EKET-ETENR,
END OF EKKEY.
DATA: BEGIN OF ITAB OCCURS 50,
BEGIN OF EKKEY,
EBELN LIKE EKET-EBELN,
EBELP LIKE EKET-EBELP,
ETENR LIKE EKET-ETENR,
END OF EKKEY,
ebeln like ekko-ebeln,
ebelp like ekpo-ebelp,
CHANGENR LIKE CDHDR-CHANGENR,
UDATE LIKE CDHDR-UDATE,
UTIME LIKE CDHDR-UTIME,
USERNAME LIKE CDHDR-USERNAME,
CHNGIND LIKE CDSHW-CHNGIND,
FNAME LIKE CDSHW-FNAME, "ADDED BY ANUBHAV
FTEXT LIKE CDSHW-FTEXT,
OUTLEN LIKE CDSHW-OUTLEN,
F_OLD LIKE CDSHW-F_OLD,
F_NEW LIKE CDSHW-F_NEW,
END OF ITAB.
DATA : BEGIN OF ITAB1 OCCURS 0,
EBELN LIKE EKET-EBELN,
bedat like ekko-bedat,
EBELP LIKE EKET-EBELP,
txz01 like ekpo-txz01,
lifnr like ekko-lifnr,
name1 like lfa1-name1,
UDATE LIKE CDHDR-UDATE,
FTEXT LIKE CDSHW-FTEXT,
F_OLD LIKE CDSHW-F_OLD,
ekgrp like ekko-ekgrp,
F_NEW LIKE CDSHW-F_NEW,
CHANGENR LIKE CDHDR-CHANGENR,
UTIME LIKE CDHDR-UTIME,
USERNAME LIKE CDHDR-USERNAME,
CHNGIND LIKE CDSHW-CHNGIND,
FNAME LIKE CDSHW-FNAME, "ADDED BY ANUBHAV
OUTLEN LIKE CDSHW-OUTLEN,
AMDNO TYPE CHAR4,
END OF ITAB1.
DATA: OLD_OBJECTID LIKE CDHDR-OBJECTID.
INTERNAL TABLES
----"modification
DATA: BEGIN OF I_NAST OCCURS 0,
OBJKY TYPE NAST-OBJKY,
ERDAT TYPE NAST-ERDAT,
KAPPL TYPE NAST-KAPPL,
KSCHL TYPE NAST-KSCHL,
PARVW TYPE NAST-PARVW,
PARNR TYPE NAST-PARNR,
ERUHR TYPE NAST-ERUHR,
AMDNO TYPE CHAR4,
EBELN TYPE EKKO-EBELN,
END OF I_NAST.
DATA : I_NAST1 LIKE TABLE OF I_NAST WITH HEADER LINE.
DATA: BEGIN OF I_TAB OCCURS 0,
OBJKY TYPE NAST-OBJKY,
ERDAT TYPE NAST-ERDAT,
KAPPL TYPE NAST-KAPPL,
KSCHL TYPE NAST-KSCHL,
PARVW TYPE NAST-PARVW,
PARNR TYPE NAST-PARNR,
ERUHR TYPE NAST-ERUHR,
END OF I_TAB.
DATA: INDEX TYPE I.
TYPE-POOLS : SLIS.
ALV Declarations *
DATA: W_REPID LIKE SY-REPID,
P_I_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,
P_I_HEADING TYPE SLIS_T_LISTHEADER,
I_LAYOUT TYPE SLIS_LAYOUT_ALV,
I_EVENTS TYPE SLIS_T_EVENT,
I_HEADING TYPE SLIS_T_LISTHEADER.
DATA: WA_FIELDCAT TYPE SLIS_FIELDCAT_ALV,
SR TYPE I.
INITIALIZATION----
INITIALIZATION.
CLEAR I_NAST.
CLEAR I_TAB.
REFRESH I_NAST.
REFRESH I_TAB.
AT SELECTIN SCREEN----
AT SELECTION-SCREEN.
PERFORM DATA_VALIDATION.
TOP OF PAGE----
TOP-OF-PAGE.
PERFORM TOP_OF_PAGE.
END OF PAGE----
END-OF-PAGE.
START OF SELECTION----
START-OF-SELECTION.
PERFORM BUILD_COMMENT USING I_HEADING.
PERFORM EVENT_BUILD CHANGING I_EVENTS.
SELECT * FROM EKKO . " WHERE EBELN IN XEBELN AND
*LIFNR IN XLIFNR.
CLEAR CDHDR.
CLEAR CDPOS.
CDHDR-OBJECTCLAS = 'EINKBELEG'.
CDHDR-OBJECTID = EKKO-EBELN.
PERFORM GETCHGDOCS.
ENDSELECT.
DELETE ITAB WHERE ( FNAME NE 'NETPR'
AND FNAME NE 'NETWR'
AND FNAME NE 'MENGE' ).
loop at itab.
read table itab.
itab-ebeln = itab-ekkey+0(10).
itab-ebelp = itab-ekkey+11(4).
modify itab.
endloop.
LOOP AT ITAB.
MOVE-CORRESPONDING ITAB TO ITAB1.
APPEND ITAB1.
ENDLOOP.
LOOP AT ITAB1.
SELECT OBJKY ERDAT KAPPL KSCHL PARVW PARNR ERUHR
FROM NAST
INTO CORRESPONDING FIELDS OF TABLE I_NAST
WHERE OBJKY = ITAB1-EBELN
AND KAPPL = 'EF'
AND KSCHL = 'ZNEU'
AND PARVW = 'LF'
AND SPRAS = SY-LANGU.
IF SY-SUBRC NE 0.
DELETE ITAB1.
ENDIF.
LOOP AT I_NAST.
MOVE-CORRESPONDING I_NAST TO I_NAST1.
APPEND I_NAST1.
ENDLOOP.
ENDLOOP.
SORT I_NAST1 BY OBJKY ASCENDING ERDAT DESCENDING ERUHR DESCENDING.
DELETE ADJACENT DUPLICATES FROM I_NAST1 COMPARING OBJKY.
* Select data from TABLE NAST to get ebeln before selected date
IF I_NAST1[] IS NOT INITIAL.
SELECT OBJKY ERDAT KAPPL KSCHL PARVW PARNR ERUHR
FROM NAST
INTO CORRESPONDING FIELDS OF TABLE I_TAB
FOR ALL ENTRIES IN I_NAST1
WHERE OBJKY = I_NAST1-OBJKY
AND ERDAT <= I_NAST1-ERDAT
AND PARNR = I_NAST1-PARNR
AND KAPPL = 'EF'
AND KSCHL = 'ZNEU'
AND PARVW = 'LF'
AND SPRAS = SY-LANGU.
ENDIF.
Logic to get no of amendments for one po
LOOP AT I_NAST1.
CLEAR INDEX.
LOOP AT I_TAB WHERE OBJKY = I_NAST1-OBJKY.
INDEX = INDEX + 1.
ENDLOOP.
I_NAST1-AMDNO = INDEX - 1.
I_NAST1-EBELN = I_NAST1-OBJKY.
MODIFY I_NAST1 TRANSPORTING AMDNO EBELN.
ENDLOOP.
*LOOP AT I_NAST1.
*READ TABLE ITAB1 WITH KEY EBELN = I_NAST1-EBELN.
*IF SY-SUBRC = 0.
*ITAB1-AMDNO = I_NAST1-AMDNO.
*MODIFY ITAB1 TRANSPORTING AMDNO .
*ENDIF.
*ENDLOOP.
DELETE I_NAST1 WHERE AMDNO = 0. "ADDED BY ANUBHAV
LOOP AT ITAB1.
READ TABLE I_NAST1 WITH KEY EBELN = ITAB1-EBELN.
IF SY-SUBRC NE 0.
DELETE ITAB1.
ENDIF.
ENDLOOP.
loop at itab1.
select single *
from ekko
into ekko
where ebeln = itab1-ebeln.
if sy-subrc = 0.
itab1-bedat = ekko-bedat.
itab1-lifnr = ekko-lifnr.
itab1-ekgrp = ekko-ekgrp.
modify itab1.
endif.
endloop.
DELETE ITAB1 WHERE EKGRP NOT IN S_EKGRP.
DELETE ITAB1 WHERE LIFNR NOT IN S_LIFNR.
loop at itab1.
select single *
from lfa1
into lfa1
where lifnr = itab1-lifnr.
if sy-subrc = 0.
itab1-name1 = lfa1-name1.
modify itab1.
endif.
endloop.
loop at itab1.
select single *
from ekpo
into ekpo
where ebeln = itab1-ebeln
and ebelp = itab1-ebelp.
if sy-subrc = 0.
itab1-txz01 = ekpo-txz01.
modify itab1.
endif.
endloop.
sort itab1 by udate descending ebeln ebelp.
building field catelogue
ADD 1 TO SR.
WA_FIELDCAT-COL_POS = SR.
WA_FIELDCAT-ROW_POS = 1.
WA_FIELDCAT-TABNAME = 'Itab1'.
WA_FIELDCAT-JUST = 'L' .
WA_FIELDCAT-FIELDNAME = 'EBELN'.
WA_FIELDCAT-SELTEXT_L = 'PO NO '.
APPEND WA_FIELDCAT TO P_I_FIELDCAT.
CLEAR WA_FIELDCAT.
ADD 1 TO SR.
WA_FIELDCAT-COL_POS = SR.
WA_FIELDCAT-ROW_POS = 1.
WA_FIELDCAT-TABNAME = 'Itab1'.
WA_FIELDCAT-JUST = 'L' .
WA_FIELDCAT-FIELDNAME = 'BEDAT'.
WA_FIELDCAT-SELTEXT_L = 'PO DATE '.
APPEND WA_FIELDCAT TO P_I_FIELDCAT.
CLEAR WA_FIELDCAT.
ADD 1 TO SR.
WA_FIELDCAT-COL_POS = SR.
WA_FIELDCAT-ROW_POS = 1.
WA_FIELDCAT-TABNAME = 'Itab1'.
WA_FIELDCAT-JUST = 'L' .
WA_FIELDCAT-FIELDNAME = 'EBELP'.
WA_FIELDCAT-SELTEXT_L = 'Item No '.
APPEND WA_FIELDCAT TO P_I_FIELDCAT.
CLEAR WA_FIELDCAT.
ADD 1 TO SR.
WA_FIELDCAT-COL_POS = SR.
WA_FIELDCAT-ROW_POS = 1.
WA_FIELDCAT-TABNAME = 'Itab1'.
WA_FIELDCAT-JUST = 'L' .
WA_FIELDCAT-FIELDNAME = 'TXZ01'.
WA_FIELDCAT-SELTEXT_L = 'Item Description'.
APPEND WA_FIELDCAT TO P_I_FIELDCAT.
CLEAR WA_FIELDCAT.
ADD 1 TO SR.
WA_FIELDCAT-COL_POS = SR.
WA_FIELDCAT-ROW_POS = 1.
WA_FIELDCAT-TABNAME = 'Itab1'.
WA_FIELDCAT-JUST = 'L' .
WA_FIELDCAT-FIELDNAME = 'LIFNR'.
WA_FIELDCAT-SELTEXT_L = 'Vendor NO '.
APPEND WA_FIELDCAT TO P_I_FIELDCAT.
CLEAR WA_FIELDCAT.
ADD 1 TO SR.
WA_FIELDCAT-COL_POS = SR.
WA_FIELDCAT-ROW_POS = 1.
WA_FIELDCAT-TABNAME = 'Itab1'.
WA_FIELDCAT-JUST = 'L' .
WA_FIELDCAT-FIELDNAME = 'NAME1'.
WA_FIELDCAT-SELTEXT_L = 'Vendor Name'.
APPEND WA_FIELDCAT TO P_I_FIELDCAT.
CLEAR WA_FIELDCAT.
ADD 1 TO SR.
WA_FIELDCAT-COL_POS = SR.
WA_FIELDCAT-ROW_POS = 1.
WA_FIELDCAT-TABNAME = 'ITAB1'.
WA_FIELDCAT-JUST = 'L' .
WA_FIELDCAT-FIELDNAME = 'UDATE'.
WA_FIELDCAT-SELTEXT_L = 'Amendment Date'.
APPEND WA_FIELDCAT TO P_I_FIELDCAT.
CLEAR WA_FIELDCAT.
ADD 1 TO SR.
WA_FIELDCAT-COL_POS = SR.
WA_FIELDCAT-ROW_POS = 1.
WA_FIELDCAT-TABNAME = 'ITAB1'.
WA_FIELDCAT-JUST = 'L' .
WA_FIELDCAT-FIELDNAME = 'FTEXT'.
WA_FIELDCAT-SELTEXT_l = 'Change Field Description'.
WA_FIELDCAT-just = 'L'.
APPEND WA_FIELDCAT TO P_I_FIELDCAT.
CLEAR WA_FIELDCAT.
ADD 1 TO SR.
WA_FIELDCAT-COL_POS = SR.
WA_FIELDCAT-ROW_POS = 1.
WA_FIELDCAT-TABNAME = 'ITAB1'.
WA_FIELDCAT-JUST = 'L' .
WA_FIELDCAT-FIELDNAME = 'F_OLD'.
WA_FIELDCAT-SELTEXT_L = 'Old Value '.
APPEND WA_FIELDCAT TO P_I_FIELDCAT.
CLEAR WA_FIELDCAT.
ADD 1 TO SR.
WA_FIELDCAT-COL_POS = SR.
WA_FIELDCAT-ROW_POS = 1.
WA_FIELDCAT-TABNAME = 'ITAB1'.
WA_FIELDCAT-JUST = 'L' .
WA_FIELDCAT-FIELDNAME = 'F_NEW'.
WA_FIELDCAT-JUST = 'L' .
WA_FIELDCAT-SELTEXT_L = 'New Value '.
APPEND WA_FIELDCAT TO P_I_FIELDCAT.
CLEAR WA_FIELDCAT.
DATA : L_REPID TYPE SYREPID,
L_REPID1 LIKE DISVARIANT.
L_REPID = SY-REPID.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_INTERFACE_CHECK = ' '
I_BYPASSING_BUFFER = ' '
I_BUFFER_ACTIVE = 'X'
I_CALLBACK_PROGRAM = L_REPID
I_CALLBACK_PF_STATUS_SET = ' '
I_CALLBACK_USER_COMMAND = ' '
I_CALLBACK_TOP_OF_PAGE = ' '
I_CALLBACK_HTML_TOP_OF_PAGE = ' '
I_CALLBACK_HTML_END_OF_LIST = ' '
I_STRUCTURE_NAME =
I_BACKGROUND_ID = ' '
I_GRID_TITLE =
I_GRID_SETTINGS =
IS_LAYOUT = I_LAYOUT
IT_FIELDCAT = P_I_FIELDCAT[]
IT_EXCLUDING =
IT_SPECIAL_GROUPS =
IT_SORT =
IT_FILTER =
IS_SEL_HIDE =
I_DEFAULT = 'X'
I_SAVE = 'X'
IS_VARIANT = L_REPID1
IT_EVENTS = I_EVENTS
IT_EVENT_EXIT =
IS_PRINT =
IS_REPREP_ID =
I_SCREEN_START_COLUMN = 0
I_SCREEN_START_LINE = 0
I_SCREEN_END_COLUMN = 0
I_SCREEN_END_LINE = 0
I_HTML_HEIGHT_TOP = 0
I_HTML_HEIGHT_END = 0
IT_ALV_GRAPHICS =
IT_HYPERLINK =
IT_ADD_FIELDCAT =
IT_EXCEPT_QINFO =
IR_SALV_FULLSCREEN_ADAPTER =
IMPORTING
E_EXIT_CAUSED_BY_CALLER =
ES_EXIT_CAUSED_BY_USER =
TABLES
T_OUTTAB = ITAB1[]
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
*& Form GETCHGDOCS
text
FORM GETCHGDOCS.
CALL FUNCTION 'CHANGEDOCUMENT_READ_HEADERS'
EXPORTING
DATE_OF_CHANGE = CDHDR-UDATE
OBJECTCLASS = CDHDR-OBJECTCLAS
OBJECTID = CDHDR-OBJECTID
TIME_OF_CHANGE = CDHDR-UTIME
USERNAME = CDHDR-USERNAME
TABLES
I_CDHDR = ICDHDR
EXCEPTIONS
NO_POSITION_FOUND = 1
OTHERS = 2.
CHECK SY-SUBRC EQ 0.
DELETE ICDHDR WHERE CHANGE_IND EQ 'I'.
CHECK NOT ICDHDR[] IS INITIAL.
LOOP AT ICDHDR.
CHECK ICDHDR-UDATE IN XUDATE.
CHECK ICDHDR-USERNAME IN XNAME.
CALL FUNCTION 'CHANGEDOCUMENT_READ_POSITIONS'
EXPORTING
CHANGENUMBER = ICDHDR-CHANGENR
IMPORTING
HEADER = CDHDR
TABLES
EDITPOS = ICDSHW
EXCEPTIONS
NO_POSITION_FOUND = 1
OTHERS = 2.
CHECK SY-SUBRC EQ 0.
DELETE ICDSHW WHERE ( CHNGIND NE 'U' OR TABNAME NE 'EKPO' ).
LOOP AT ICDSHW.
CHECK ICDSHW-TEXT_CASE EQ SPACE.
MOVE-CORRESPONDING ICDSHW TO ITAB.
MOVE-CORRESPONDING ICDHDR TO ITAB.
MOVE ICDSHW-TABKEY+3 TO ITAB-EKKEY.
APPEND ITAB.
ENDLOOP.
ENDLOOP.
ENDFORM. "GETCHGDOCS
*& Form BUILD_COMMENT
text
-->P_I_HEADING text
FORM BUILD_COMMENT USING P_I_HEADING TYPE SLIS_T_LISTHEADER.
DATA: WA_LINE TYPE SLIS_LISTHEADER,
TEXT1(50) TYPE C,
TEXT2(40) TYPE C,
W_DATE1(10) TYPE C,
W_DATE2(10) TYPE C.
CONCATENATE ' CHAMBAL FERTILISERS AND CHEMICALS LIMITED' ' ' INTO TEXT1.
WA_LINE-TYP = 'H'.
WA_LINE-INFO = TEXT1.
APPEND WA_LINE TO P_I_HEADING.
CLEAR TEXT1.
CONCATENATE ' AMENDED ORDERS' ' ' INTO TEXT1.
WA_LINE-TYP = 'S'.
WA_LINE-INFO = TEXT1.
APPEND WA_LINE TO P_I_HEADING.
write xudate-low to w_date1 DD/MM/YYYY .
write xudate-high to w_date2 DD/MM/YYYY .
concatenate 'PERIOD FROM : ' W_DATE1 ' TO ' W_DATE2 INTO TEXT2 SEPARATED BY SPACE.
WA_LINE-TYP = 'S'.
WA_LINE-INFO = TEXT2.
APPEND WA_LINE TO P_I_HEADING.
ENDFORM. " build_comment
*& Form EVENT_BUILD
text
-->P_I_EVENTS text
FORM EVENT_BUILD CHANGING P_I_EVENTS TYPE SLIS_T_EVENT.
DATA: W_EVENT TYPE SLIS_ALV_EVENT.
CONSTANTS:
GC_FORMNAME_TOP_OF_PAGE TYPE SLIS_FORMNAME VALUE 'TOP_OF_PAGE'.
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
I_LIST_TYPE = 0
IMPORTING
ET_EVENTS = P_I_EVENTS.
READ TABLE P_I_EVENTS WITH KEY NAME = SLIS_EV_TOP_OF_PAGE
INTO W_EVENT.
IF SY-SUBRC = 0.
MOVE GC_FORMNAME_TOP_OF_PAGE TO W_EVENT-FORM.
APPEND W_EVENT TO P_I_EVENTS.
ENDIF.
ENDFORM. " event_build
*& Form TOP_OF_PAGE
text
FORM TOP_OF_PAGE .
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
IT_LIST_COMMENTARY = I_HEADING
I_LOGO = 'CFCLLOGO'.
ENDFORM. " top_of_page -
Hi all
Is there any report where we can find out the below requirements,
If the PO is not approved u2013 the value should not be populated.
If the PO is approved u2013 the value should be populated.
If the PO is amended the incremental increase in the PO value should populate in the table based on the amended date.
Thanks in Advance
SivaHi
In ME2N
Tool Bar- edit- Dynamic selection
Select Release status and enter values.
Then execute.
It will show the released PO
Regards,
Raman -
Itunes, Multiple Macs, Iphones and Icloud account vs.NAS help!
Hi all
I have a problem with the way im using Nas and how i manage multiple Itunes across multiple machines and Iphones.
Background.
Network - I have a Synology 2Tb NAS storage solution which is connected via a Wifi, ethernet router & modem to the other machines either fixed or wireless.
Connecting Devices ( See diagram)
Station one = Macpro - 10.7.5 | itunes 11.1.5 | Fixed Ethernet connection to router network
Station two = Mac Mini -10.7.5 | itunes 11.1.5 | fixed ethernet connection to route network
Station three = Macbook - Maverick | itunes 11.1.5 | wireless
History.
I have previously moved all my itunes files (Not the library) from station one (see diagram) to NAS using the advice on this forum (very helpful) and kept the library on the Macpro which caused no problem with the Itunes, phone syncing etc as it was all with one Apple icloud profile with one Iphone.
So the wife then got herself an Iphone which we found was difficult to synch on station one, so decided to use a mini mac as her machine so she could sync phone and have here own itunes and this i think is where I might have managed to screw things up and where the complexity begins.
We sync one calender across all machines using icloud but each person has seperate apple IDs for phones/itunes etc which we set up and that part seems to work.
Problem
The big issue I have now is that there are elements of the Itunes storage which are now going wrong and its mainly down to the seperate libraries being used and amending data on the stored files. It creates problems when one machine adds a file or amends a title it then throws out the local libraries on the machines
The solution i think is setting up a single library on each machine which syncs (somehow) everytime someone moves, changes and adds to the music and movie elemements yet i can continue to use a local library on station one and two which syncs for Iphone/Ipad and apps changes.
Is there a solution to that ?
Diagram.My brain hurts.
Fundamental behaviors of iTunes:
iTunes only looks at its library file to tell it what is in the media collection. If items are added to the media folders directly without adding to the library, iTunes has no idea they are there. That's just the way it works and no way to get around it. Oh, you could maybe come up with an Applescript that would start iTunes and add items to a library at the same time. The Dougscripts web site even has one that kind of does that ('scan files folders not added' I think) but you'd need to modify it to make it automated.
Given the above, a using a common library file is the only way to make sure when iTunes is opened on a computer it is up to date on additions. However, a library file can only be opened by one running iTunes application at a time. -
Outlook Calendar does not Sync Changed Appointments
I have noticed that when synching my BB calendar to Outlook 2003, all new/deleted appointments are propertly synched, but an old appointment that was changed (ie date change) is not updated so they continue to appear in the original date/time in Outlook while the BB shows it at the new amended date/time. Any thoughts on what is wrong or how to remedy this problem?
thanks
patrickHi kcpalmer,
Welcome to the BlackBerry Support Community.
Have you already tried doing a clean uninstall of the BlackBerry® Desktop Software and reinstaling it? If not, I would recommend trying that first. "How to perform a clean uninstall of the BlackBerry Desktop Software" http://bbry.lv/HVraPb
Is Microsoft® Outlook® configured to use a .pst file or Microsoft® Exchange?
Thanks.
-FS
Come follow your BlackBerry Technical Team on Twitter! @BlackBerryHelp
Be sure to click Kudos! for those who have helped you.
Click Solution? for posts that have solved your issue(s)! -
Windows 8.1 64bit. Webcam works with "Camera" app but not with Skype.
I've spent a few hours googling and trying out various things - all listed below. I give up - any ideas??? OS: Windows 8.1 64bitMemory: 32GBWebCam: Microsoft VX-7000. As per subject - the webcam works with the "Camera" app but not with Skype for desktop or for Modern UI (or the Microsoft Lifecam software for that matter). Already attempted: 1) Uninstall webcam drivers - download latest from microsoft (Windows 7) and install in Windows 7 compatibility mode.2) Close (from taskmgr) anything that looks like it might use Webcam. 3) Run Skype for Desktop in Windows 7 and 8 compatibility modes None of the above work. In Skype for Modern UI the webcam doesn't appear in the drop down in Settings - so I can't even select it. In Skype for desktops (version 6.11.32.102) the webcam is found but instead of image I get "Can't start video. Try closing other programs that might be using your webcam". I see from a bit of googling that various people seem to have the same issue (i.e. Webcam works with Camera app but not Skype) - so I'm hopeful someone has found a workaround / fix to this issue and I've just not had the googling skills to find it Thanks, - Matt Symes
OK - I appear to have resolved the issue. I restricted my google terms to [vx-7000 site:microsoft.com "windows 8.1"] Which uncovered this article: http://support.microsoft.com/kb/933311 I noticed there were a couple of Windows 7 x64 specific registry settings that were mentioned so I checked these and they weren't as per the article. In fact - one of the Registry Keys was already used by other software "AI Charger+" which is some ValueAdd software that came with my motherboard. I uninstalled AI Charger+, uninstalled LifeCam driver. Reinstalled LifeCam driver in Windows 7 compatibility mode. Still not working. I returned to the registry and noticed the settings still differed from the above article. I corrected them (which involved not just amending Data but having to add new Values). I then disabled and reenabled the LifeCam from dvcmgmt.msc I was then able to get video from the webcam in the Skype for Desktop preview screen.
Maybe you are looking for
-
...MACBOOK back light dead.....realized is only back light, after purchasing new battery, new power cord.. Now ,I am using a light-source to see in the screen ,husband purchased appropriate cord, to hook up to HDMI. So I hopped to see what is on
-
RS480M2 and Audigy 2 freeze problem
Is there somehow who is able to run an Audigy 2 on a RS480M2 board? I've done some googleing to realize that no one seems to be able to run an Audigy 2 on that board. After some time (10 minutes, 1 hours, some hours, etc.), the computer freezes. Some
-
Standard programs for deletion of transaction data over BAPIs
Hello Experts, What are the pros and cons of using SAP standard programs like /sapapo/rlcdelete etc. over the SAP provided BAPIs (e.g. BAPI_PIRSRVAPS_DELMULTI in case of PIRs). What would be called as best approach when run in regular background jobs
-
Hi I am using PI 7.1 as central monitoring system in my landscape. In CCMS i have added all the systems (ECC, SRM , CRM). NOw when i tried to see the alerts for J2ee engine of my PI system. It is giving th ebelow error. ngsvawrk211\...\RECEIVER: No m
-
I have an iphone 5 and I am only able to take a few pictures before a message comes up saying I need more storage, I got extra storage for icloud which isnt being used, can someone please tell me how to access this storage so I can take more photos e