Usage Decision -Transfer Posting
Hi All,
In our system Usage decision is usually done by QA10 (RQEVAI30) for inspection types 01,04,06.09.
Now i tried to do it for an inspection type 08(transfer posting),but the system is not recognizing the lots available for usage decision with inspection type 08.But when i try to do the UD through QA32,its doing the same sucessfully.
Why its so?Why system is not identifying the lots with inspection type 08 thr QA10?
Thanks & Regards,
Ebin Joseph
Hi Sujith,
I was not maintaining task list for 08 inspection type.
Now i tried to maintain it.But Whats the usage to be used for stock transfer inspection(08)?I tried with usage 03(universal) and ran QA10.still its not recognizing lots with 08 inspection type.
I didnt get what u meant by " If yes then is your char in Long term or Required characteristic".
Please revert.
Thanks & Regards
Ebin Joseph
Similar Messages
-
Usage Decision to post new material.
I need a FM which posts material as New Material when the Usage decision is made. I get the Usage decision and the material number(new)from the shopfloor and post it using the t-code qa11. Any help will be rewarded.
Function Modules
http://www.erpgenie.com/abap/functions.htm
http://www.sapdevelopment.co.uk/fmodules/fmssap.htm
http://www.erpgenie.com/abap/index.htm
http://www.geocities.com/victorav15/sapr3/abapfun.html
Rewards if useful................
Minal -
Dear All,
I have following queries which needs to be clarified.
1. In the results recording level after recording we give valuation as Accepted or Rejected. But what ever the valuation (Accepted/ Rejected) we give in results recording, in the usage decision level we can give valuation as whatever we like. whats the relationship between results recording level valuation and usage decision level valuation?
2. How do i make in the usage decision if i give valuation as rejected quantity to be posted to Scrap or stay in Quality Inspection until re inspection is done? If i have to maintain a status profile for that can some one detail the steps?
Thanks and Regards,
DTD1. In the results recording level after recording we give valuation as Accepted or Rejected. But what ever the valuation (Accepted/ Rejected) we give in results recording, in the usage decision level we can give valuation as whatever we like. whats the relationship between results recording level valuation and usage decision level valuation?
Hi
There is no relation between RR ,DR & UD which you take.
as you rightly said even if RR valuation is Reject you can Accept lot in UD.
This is std sap
if you want that after any char is rejected then UD should be rejected then use
user exit:
QEVA0010 UD: Usage decision check
2. How do i make in the usage decision if i give valuation as rejected quantity to be posted to Scrap or stay in Quality Inspection until re inspection is done? If i have to maintain a status profile for that can some one detail the steps?
The simplest way you can do create a selected set with code AH: Hold QI lot.
This means UD is taken but stock posting is still pending with QI
Status profile will help you but this will make thinks more complecated.
Regards
Sujit -
(Usage Decision )Stock Post To Unrestricted Use.
Dear QM Expert,
I create a inspection lot of Finished Good and inspection type is 04 used when take a decision in QA11 then the Inspection lot is not open and the message has shown.
<b>The function you selected
cannot be
carried out:
Access usage decision</b>
When i use QA12 then message show is this,
<b>You cannot perform this task because the usage decision has not been made yet.</b>
But the stock is not posted To unrestricted use.
I want to stock post or cancel the document but i cant cancel or reverse the document.
Please suggest me the urgent bases what i do for stock post to unrestricted use.
Once problem has been mentioned here that the logistic period has been closed and FI/CO period will be close after six days.
thanks
ufarooq
Message was edited by:
Shahzad SamiHi,
Follow these steps for the qm inspn procurement.
1.Create Material Master Record with QM View.
2.Activate QM Proc/ Specify Control Key 0001.
3. choose Inspn set up and inspn type to be entered as 01 and set the active indicator.
4. Create Q-info record with material / vendor.(qi01)
5. Enter the release by date as 31.12.9999
7.Create inspn plan(qp01) with usage 5 and status 4and enter the control key as PPQM.
8.Choose the operation and assign the inspn characteristic / sampling procedure
9.MD61/MD02/MD04
10 Convert the Purchase requisition as Purchase Order.
11. Receive the Material against the PO.
12. In MIGO against PO receive the material.
13.QM lot will be created
14.qa02 check inspn plan / sample.
15.qe51n results recording
lot origin 01 mat no and execute results
16.qa11 ud code select accept and chooseinspn tab page and type the qty to be proposed and save.
17.stock will move to unrestricted use .
Regards,
nandha -
Posting after making usage decision-QM
hi all,
i have done the usage decision and posted only partial quantities, then how can i post the remaining materials in to unrestricted stock.
regards
thyagarajanThyagarajan,
In QA32 transaction selct the lot, click on Usage Decision button. In the Insp Stock posting tab page enter the remaining qty and save.
While selecting the lot in the initail screen choose the radio button "Lots with Usage Decision" or "All Inspection Lots".
Regards
Ram
Message was edited by:
Ramanujan Chitrakootam -
PP - QM: Reversal of the usage decision
Hi Gurus,
We have completed Result Recording using QE51N transaction and Usage decision using QA11. It has posted a stock from QI to Unrestricted use. Now I want to take it back from Unrestricted use to QI. This needs reversal of usage decision (What I think).
Can you suggest me the proper way of performing the said transaction?
I will really appreciate your concern.
Thanks
ShivR/3 note no. 175842 14.12.2001 Page 1
Number 0175842
Version 0021 from 29.11.2001
Status Released for customer
Set by SAP AG on 03.12.2001
Language EN
Short text Inspection lot: Reversal of goods movements from UD
Administrator SAP AG
Component QM-IM-UD Inspection Lot Completion
Long text
Symptom
Goods movements, which were created from the transactions of the usage
decision, can no longer be reversed.
Additional key words
QA11, QA12, QA14, MBST, MF41
Inspection lot, usage decision, goods movements, reversal, material
document
Cause and preconditions
Presently, the function is not provided in the standard system.
Solution
The function is not provided in the standard system up to and including
Release 4.6C.
When you do this bear the following in mind:
1. Using the attached program corrections, stock transfer postings can
be reset for the usage decision.If it is possible to post this
document in the stock management, the inspection lot is also
corrected and the Quality Management Information System is if
necessary updated.After the reset has been successfully carried out,
the inspection lot, related to the stocks, has the status before the
first stock credit entry.The usage decision is not reset.If, after
the usage decision, further transfer postings are carried out in the
stock management which lead to the usage decision transfer postings
not being able to be reset due to missing availability, these
postings must be reversed first.
2. The goods movement is carried out in each case with the reversal
movement type (document neutral reversal).The original documents are
not reversed related to the document.This may lead to deviations in
the accounting caused by valuation.
3. Resetting postings for materials requiring serial numbers is not
supported.
4. With this correction program, you cannot reverse goods movements for
inpection lots for handling units (HU).
5. Batch status changes which have possibly been carried out are not
cancelled.
6. Batches which have been created in the usage decision during a
transfer posting are not deleted.The classification of these batches
is not changed either.
Page 2
7. Within the adjustment posting, in Release 4.x, the reference records
are also adjusted between the material document and inspection
lot.This can possibly lead to an incorrect description of the
reference type when displaying material documents for the inspection
lot.In Release 3.x, the reference records are deleted in order to
make sure that individual documents cannot be cancelled several
times.
8. The program does not contain any own authorization checks and should
be used with utmost care and ONLY after a successful test. The
program should ONLY be applied in exceptions and should not be part
of the standard procedure.
9. The logic implemented in the program for the generation of material
documents or for the update of inspection lot quantities and
inspection lot status should under no circumstances be be changed as
this might lead to inconsistent data. Since this is a program that is
not contained in the standard system, problems that are created as a
result of the program application can be dealt with as problems that
have arisen as a result of a customer modification.
To implement the program, proceed as follows:
1. Create an executable program and copy the attached source code.Then
maintain the text for selection parameter PRUEFLOS by transferring
the Dictionary text.
2. If you a use a Release < 4.6, you must create the function group
ZQMB. In this function group, you must create function module
'ZQMB_QAMB_CANCEL'. Flag the function module as an update function
module (Start immediately) and include table interface parameter
'I_QAMB_TAB' (type specification LIKE, reference structure QAMB).
Afterwards you must include exception 'ERROR_DURING_UPDATE' and
implement the attached source code.
3. Use Transaction OMJJ to enter further entries in level 'Allowed
transactions' (table T158B) for transaction code 'QA11' (Record Usage
Decision).The movement types for which these entries must be created
are derived from the system settings for the goods movements for the
usage decision (table TQ07M):The reversal movement type must be
determined for every movement type that is entered in table TQ07M
with the key VMENGE01 - VMENGE09 and the corresponding entry must be
included in the above-mentioned table.You can use table T156N for
determining the reversal movement type:You can determine the reversal
movement type by entering the movement type (BWART) and function code
(FCODE) ST (BWART_NEXT).For missing entries, the system generates
error M7096 'Goods movement not possible with mvmt type &'.
Source code corrections
Page 3
Valid releases
R/3 Standard 46C - 46D
46A - 46B
45A - 45B
40A - 40B
30F - 31I
Other components
QM-IM Quality Inspection
Reference to related notes
Number Short text
0033924 Cancelling usage decisions
0048815 Checking possible inconsistencies between MM and QM
Page 4
Assigned correction instructions
$$----
$$
$ Correction Instr. : 0120024545 0000111772 $
$ Software Component : SAP_APPL SAP Application $
*$----
$*
$ Validity : 40A SAPKH40A01 - SAPKH40A25 $
$ : 40B All Patches $
$ : 45A All Patches $
$ : 45B All Patches $
*$----
$*
$ Changes/Objects Not Contained in Standard SAP System $
$$----
$$
*& Object FUNC ZQMB_QAMB_CANCEL
*& Object Header FUGR ZQMB
*& FUNCTION ZQMB_QAMB_CANCEL
*>>>> START OF INSERTION <<<<
UPDATE QAMB FROM TABLE I_QAMB_TAB.
IF NOT SY-SUBRC IS INITIAL.
RAISE ERROR_DURING_UPDATE.
ENDIF.
*>>>> END OF INSERTION <<<<<<
*& Object REPS RQEVAC50
*& Object Header PROG RQEVAC50
*& REPORT RQEVAC50
*>>>> START OF INSERTION <<<<
REPORT RQEVAC50 MESSAGE-ID QA.
TYPES:
T_QAMB_TAB LIKE QAMB OCCURS 0,
T_MKPF_TAB LIKE MKPF OCCURS 0,
T_MSEG_TAB LIKE MSEG OCCURS 0.
PARAMETERS:
PRUEFLOS LIKE QALS-PRUEFLOS OBLIGATORY MEMORY ID QLS.
DATA:
G_MSGV1 LIKE SY-MSGV1,
G_QALS LIKE QALS,
G_QALS_LEISTE LIKE QALS,
G_QAMB_TAB TYPE T_QAMB_TAB,
G_QAMB_VB_TAB TYPE T_QAMB_TAB,
G_MKPF_TAB TYPE T_MKPF_TAB,
G_MSEG_TAB TYPE T_MSEG_TAB,
G_SUBRC LIKE SY-SUBRC.
START-OF-SELECTION.
Page 5
PERFORM ENQUEUE_QALS USING PRUEFLOS
G_SUBRC.
IF NOT G_SUBRC IS INITIAL.
MESSAGE ID SY-MSGID TYPE 'S' NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
SUBMIT (SY-REPID) VIA SELECTION-SCREEN.
ENDIF.
PERFORM READ_QALS USING PRUEFLOS
G_QALS
G_QALS_LEISTE
G_SUBRC.
IF NOT G_SUBRC IS INITIAL.
MESSAGE ID 'QA' TYPE 'S' NUMBER '102'
WITH PRUEFLOS.
SUBMIT (SY-REPID) VIA SELECTION-SCREEN.
ENDIF.
PERFORM CHECK_LOT USING G_QALS
G_SUBRC.
IF NOT G_SUBRC IS INITIAL.
CASE G_SUBRC.
WHEN 128.
G_MSGV1 = 'Material & is serialized'.
REPLACE '&' WITH G_QALS-MATNR INTO G_MSGV1.
WHEN 64.
G_MSGV1 = 'Lot & is not stock relevant'.
WHEN 32.
G_MSGV1 = 'Lot &: No stock transferred'.
WHEN 16.
G_MSGV1 = 'Lot & is cancelled'.
WHEN 8.
G_MSGV1 = 'Lot & is archived'.
WHEN 4.
G_MSGV1 = 'Lot & is blocked'.
WHEN 2.
G_MSGV1 = 'Lot & is HU managed'.
ENDCASE.
REPLACE '&' WITH PRUEFLOS INTO G_MSGV1.
MESSAGE ID '00' TYPE 'S' NUMBER '208'
WITH G_MSGV1.
SUBMIT (SY-REPID) VIA SELECTION-SCREEN.
ENDIF.
PERFORM READ_QAMB USING G_QALS
G_QAMB_TAB
G_SUBRC.
IF NOT G_SUBRC IS INITIAL.
MESSAGE ID 'QA' TYPE 'S' NUMBER '068'
WITH PRUEFLOS.
SUBMIT (SY-REPID) VIA SELECTION-SCREEN.
ENDIF.
PERFORM READ_MKPF USING G_QAMB_TAB
G_MKPF_TAB
G_SUBRC.
IF NOT G_SUBRC IS INITIAL.
Page 6
MESSAGE ID SY-MSGID TYPE 'S' NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
SUBMIT (SY-REPID) VIA SELECTION-SCREEN.
ENDIF.
PERFORM CHECK_MKPF USING G_MKPF_TAB
G_SUBRC.
IF NOT G_SUBRC IS INITIAL.
MESSAGE ID 'QA' TYPE 'S' NUMBER '068'
WITH PRUEFLOS.
SUBMIT (SY-REPID) VIA SELECTION-SCREEN.
ENDIF.
PERFORM READ_MSEG USING G_MKPF_TAB
G_MSEG_TAB
G_SUBRC.
IF NOT G_SUBRC IS INITIAL.
MESSAGE ID SY-MSGID TYPE 'S' NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
SUBMIT (SY-REPID) VIA SELECTION-SCREEN.
ENDIF.
PERFORM CHECK_MSEG USING G_MSEG_TAB
G_QAMB_TAB
G_SUBRC.
IF NOT G_SUBRC IS INITIAL.
MESSAGE ID 'QA' TYPE 'S' NUMBER '068'
WITH PRUEFLOS.
SUBMIT (SY-REPID) VIA SELECTION-SCREEN.
ENDIF.
PERFORM CREATE_GOODS_MOVEMENT USING G_QALS
G_MSEG_TAB
G_SUBRC.
IF NOT G_SUBRC IS INITIAL.
MESSAGE ID 'QA' TYPE 'S' NUMBER '068'
WITH PRUEFLOS.
SUBMIT (SY-REPID) VIA SELECTION-SCREEN.
ENDIF.
PERFORM POST_GOODS_MOVEMENT.
PERFORM POST_DATA USING G_QALS
G_QALS_LEISTE
G_QAMB_TAB
G_QAMB_VB_TAB
G_SUBRC.
IF NOT G_SUBRC IS INITIAL.
MESSAGE ID SY-MSGID TYPE 'S' NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
SUBMIT (SY-REPID) VIA SELECTION-SCREEN.
ELSE.
COMMIT WORK AND WAIT.
G_MSGV1 = 'inspection lot &'.
REPLACE '&' WITH PRUEFLOS INTO G_MSGV1.
MESSAGE ID '00' TYPE 'S' NUMBER '368'
Page 7
WITH 'Stock posting reversed for ' G_MSGV1.
SUBMIT (SY-REPID) VIA SELECTION-SCREEN.
ENDIF.
Form ENQUEUE_QALS *
Los sperren *
FORM ENQUEUE_QALS USING P_PRUEFLOS LIKE QALS-PRUEFLOS
P_SUBRC LIKE SY-SUBRC.
CLEAR: P_SUBRC.
CALL FUNCTION 'ENQUEUE_EQQALS1'
EXPORTING
PRUEFLOS = P_PRUEFLOS
EXCEPTIONS
FOREIGN_LOCK = 1
SYSTEM_FAILURE = 2
OTHERS = 3.
P_SUBRC = SY-SUBRC.
ENDFORM. " ENQUEUE_QALS
Form READ_QALS *
Prüflos lesen *
FORM READ_QALS USING P_PRUEFLOS LIKE QALS-PRUEFLOS
P_QALS LIKE QALS
P_QALS_LEISTE LIKE QALS
P_SUBRC LIKE SY-SUBRC.
CLEAR: P_SUBRC.
CALL FUNCTION 'QPSE_LOT_READ'
EXPORTING
I_PRUEFLOS = P_PRUEFLOS
I_RESET_LOT = 'X'
IMPORTING
E_QALS = P_QALS
EXCEPTIONS
NO_LOT = 1.
P_SUBRC = SY-SUBRC.
IF P_SUBRC IS INITIAL.
P_QALS_LEISTE = P_QALS.
ELSE.
CLEAR: P_QALS,
P_QALS_LEISTE.
ENDIF.
ENDFORM. " READ_QALS
Form CHECK_LOT *
Page 8
Prüflos prüfen *
FORM CHECK_LOT USING P_QALS LIKE QALS
P_SUBRC LIKE SY-SUBRC.
DATA:
L_STAT LIKE JSTAT,
L_STAT_TAB LIKE JSTAT OCCURS 0 WITH HEADER LINE.
P_SUBRC = 128.
*/Serialized Material
IF NOT P_QALS-SERNP IS INITIAL.
EXIT.
ELSE.
P_SUBRC = 64.
ENDIF.
*/BERF
CALL FUNCTION 'STATUS_CHECK'
EXPORTING
OBJNR = P_QALS-OBJNR
STATUS = 'I0203'
EXCEPTIONS
STATUS_NOT_ACTIVE = 2.
IF NOT SY-SUBRC IS INITIAL.
EXIT.
ELSE.
P_SUBRC = 32.
ENDIF.
*/BTEI & BEND
CLEAR L_STAT. CLEAR L_STAT_TAB. REFRESH L_STAT_TAB.
L_STAT-STAT = 'I0219'. APPEND L_STAT TO L_STAT_TAB. "BTEI
L_STAT-STAT = 'I0220'. APPEND L_STAT TO L_STAT_TAB. "BEND
CALL FUNCTION 'STATUS_OBJECT_CHECK_MULTI'
EXPORTING
OBJNR = P_QALS-OBJNR
TABLES
STATUS_CHECK = L_STAT_TAB.
IF L_STAT_TAB[] IS INITIAL.
EXIT.
ELSE.
P_SUBRC = 16.
ENDIF.
*/LSTO & LSTV
CLEAR L_STAT. CLEAR L_STAT_TAB. REFRESH L_STAT_TAB.
L_STAT-STAT = 'I0224'. APPEND L_STAT TO L_STAT_TAB. "LSTO
L_STAT-STAT = 'I0232'. APPEND L_STAT TO L_STAT_TAB. "LSTV
CALL FUNCTION 'STATUS_OBJECT_CHECK_MULTI'
EXPORTING
Page 9
OBJNR = P_QALS-OBJNR
TABLES
STATUS_CHECK = L_STAT_TAB.
IF NOT L_STAT_TAB[] IS INITIAL.
EXIT.
ELSE.
P_SUBRC = 8.
ENDIF.
*/ARSP & ARCH & REO1 & REO2 & REO3
CLEAR L_STAT. CLEAR L_STAT_TAB. REFRESH L_STAT_TAB.
L_STAT-STAT = 'I0225'. APPEND L_STAT TO L_STAT_TAB. "ARSP
L_STAT-STAT = 'I0226'. APPEND L_STAT TO L_STAT_TAB. "ARCH
L_STAT-STAT = 'I0227'. APPEND L_STAT TO L_STAT_TAB. "REO3
L_STAT-STAT = 'I0228'. APPEND L_STAT TO L_STAT_TAB. "REO2
L_STAT-STAT = 'I0229'. APPEND L_STAT TO L_STAT_TAB. "REO1
CALL FUNCTION 'STATUS_OBJECT_CHECK_MULTI'
EXPORTING
OBJNR = P_QALS-OBJNR
TABLES
STATUS_CHECK = L_STAT_TAB.
IF NOT L_STAT_TAB[] IS INITIAL.
EXIT.
ELSE.
P_SUBRC = 4.
ENDIF.
*/SPER
CALL FUNCTION 'STATUS_CHECK'
EXPORTING
OBJNR = P_QALS-OBJNR
STATUS = 'I0043'
EXCEPTIONS
STATUS_NOT_ACTIVE = 2.
IF SY-SUBRC IS INITIAL.
EXIT.
ELSE.
P_SUBRC = 2.
ENDIF.
*/HUM
CALL FUNCTION 'STATUS_CHECK'
EXPORTING
OBJNR = P_QALS-OBJNR
STATUS = 'I0443'
EXCEPTIONS
STATUS_NOT_ACTIVE = 2.
IF SY-SUBRC IS INITIAL.
EXIT.
ELSE.
P_SUBRC = 0.
ENDIF.
Page 10
ENDFORM. " CHECK_LOT
Form READ_QAMB *
QAMBs lesen *
FORM READ_QAMB USING P_QALS LIKE QALS
P_QAMB_TAB TYPE T_QAMB_TAB
P_SUBRC LIKE SY-SUBRC.
CLEAR: P_SUBRC.
SELECT * FROM QAMB INTO TABLE P_QAMB_TAB
WHERE PRUEFLOS = P_QALS-PRUEFLOS
AND TYP = '3'.
P_SUBRC = SY-SUBRC.
ENDFORM. " READ_QAMB
Form READ_MKPF *
Read material document header *
FORM READ_MKPF USING P_QAMB_TAB TYPE T_QAMB_TAB
P_MKPF_TAB TYPE T_MKPF_TAB
P_SUBRC LIKE SY-SUBRC.
DATA:
BEGIN OF L_MKPF_KEY_TAB OCCURS 0,
MBLNR LIKE MKPF-MBLNR,
MJAHR LIKE MKPF-MJAHR,
END OF L_MKPF_KEY_TAB.
DATA:
L_QAMB LIKE QAMB,
L_MKPF LIKE MKPF,
L_TRTYP LIKE T158-TRTYP VALUE 'A',
L_VGART LIKE T158-VGART VALUE 'WQ',
L_XEXIT LIKE QM00-QKZ.
P_SUBRC = 4.
LOOP AT P_QAMB_TAB INTO L_QAMB.
L_MKPF_KEY_TAB-MBLNR = L_QAMB-MBLNR.
L_MKPF_KEY_TAB-MJAHR = L_QAMB-MJAHR.
COLLECT L_MKPF_KEY_TAB.
ENDLOOP.
LOOP AT L_MKPF_KEY_TAB.
CALL FUNCTION 'ENQUEUE_EMMKPF'
EXPORTING
MBLNR = L_MKPF_KEY_TAB-MBLNR
MJAHR = L_MKPF_KEY_TAB-MJAHR
EXCEPTIONS
FOREIGN_LOCK = 1
Page 11
SYSTEM_FAILURE = 2
OTHERS = 3.
IF NOT SY-SUBRC IS INITIAL.
L_XEXIT = 'X'.
EXIT.
ENDIF.
CLEAR: L_MKPF.
CALL FUNCTION 'MB_READ_MATERIAL_HEADER'
EXPORTING
MBLNR = L_MKPF_KEY_TAB-MBLNR
MJAHR = L_MKPF_KEY_TAB-MJAHR
TRTYP = L_TRTYP
VGART = L_VGART
IMPORTING
KOPF = L_MKPF
EXCEPTIONS
ERROR_MESSAGE = 1.
IF NOT SY-SUBRC IS INITIAL.
L_XEXIT = 'X'.
EXIT.
ELSE.
APPEND L_MKPF TO P_MKPF_TAB.
ENDIF.
ENDLOOP.
IF NOT L_XEXIT IS INITIAL.
EXIT.
ELSE.
P_SUBRC = 0.
ENDIF.
ENDFORM. " READ_MKPF
Form READ_MSEG *
MSEGs lesen *
FORM READ_MSEG USING P_MKPF_TAB TYPE T_MKPF_TAB
P_MSEG_TAB TYPE T_MSEG_TAB
P_SUBRC LIKE SY-SUBRC.
DATA:
L_MKPF LIKE MKPF,
L_MSEG_TAB LIKE MSEG OCCURS 0 WITH HEADER LINE,
L_TRTYP LIKE T158-TRTYP VALUE 'A',
L_XEXIT LIKE QM00-QKZ.
P_SUBRC = 4.
LOOP AT P_MKPF_TAB INTO L_MKPF.
CLEAR: L_MSEG_TAB. REFRESH: L_MSEG_TAB.
CALL FUNCTION 'MB_READ_MATERIAL_POSITION'
EXPORTING
Page 12
MBLNR = L_MKPF-MBLNR
MJAHR = L_MKPF-MJAHR
TRTYP = L_TRTYP
*/ ZEILB = P_ZEILE
*/ ZEILE = P_ZEILE
TABLES
SEQTAB = L_MSEG_TAB
EXCEPTIONS
ERROR_MESSAGE = 1.
IF NOT SY-SUBRC IS INITIAL.
L_XEXIT = 'X'.
EXIT.
ELSE.
APPEND LINES OF L_MSEG_TAB TO P_MSEG_TAB.
ENDIF.
ENDLOOP.
IF NOT L_XEXIT IS INITIAL.
EXIT.
ELSE.
*/ XAuto-Zeilen und Chargenzustandsänderung werden gelöscht
DELETE P_MSEG_TAB WHERE XAUTO NE SPACE
OR BWART EQ '341'
OR BWART EQ '342'.
P_SUBRC = 0.
ENDIF.
ENDFORM. " READ_MSEG
Form CREATE_GOODS_MOVEMENT *
Warenbewegung anlegen *
FORM CREATE_GOODS_MOVEMENT USING P_QALS LIKE QALS
P_MSEG_TAB TYPE T_MSEG_TAB
P_SUBRC LIKE SY-SUBRC.
DATA:
L_LMENGEZUB LIKE QALS-LMENGEZUB,
L_LMENGEGEB LIKE QALS-LMENGEZUB,
L_MBQSS LIKE MBQSS,
L_IMKPF LIKE IMKPF,
L_IMSEG LIKE IMSEG,
L_IMSEG_TAB LIKE IMSEG OCCURS 1,
L_EMKPF LIKE EMKPF,
L_EMSEG LIKE EMSEG,
L_EMSEG_TAB LIKE EMSEG OCCURS 1,
L_MSEG LIKE MSEG,
L_MSEG_TAB LIKE MSEG OCCURS 1,
L_TCODE LIKE SY-TCODE VALUE 'QA11',
L_TABIX LIKE SY-TABIX VALUE 1,
L_XSTBW LIKE T156-XSTBW.
CLEAR: P_SUBRC.
Page 13
*/QAMB initialisieren
CALL FUNCTION 'QAMB_REFRESH_DATA'.
*/Kopf füllen
L_IMKPF-BLDAT = SY-DATLO.
L_IMKPF-BUDAT = SY-DATLO.
L_IMKPF-BKTXT = 'Cancellation of QM UD postings'.
*/Ursprüngliche zu buchende Menge merken + inkrementieren
L_LMENGEZUB = P_QALS-LMENGEZUB.
L_LMENGEGEB = P_QALS-LMENGE01
+ P_QALS-LMENGE02
+ P_QALS-LMENGE03
+ P_QALS-LMENGE04
+ P_QALS-LMENGE05
+ P_QALS-LMENGE06
+ P_QALS-LMENGE07
+ P_QALS-LMENGE08
+ P_QALS-LMENGE09.
*/Zeilen aufbauen
L_MSEG_TAB[] = P_MSEG_TAB[].
LOOP AT L_MSEG_TAB INTO L_MSEG.
MOVE-CORRESPONDING L_MSEG TO L_MBQSS.
MOVE-CORRESPONDING L_MBQSS TO L_IMSEG.
*/ Referenzbeleg übergeben, falls Bestellnummer gefüllt
IF NOT L_MSEG-EBELN IS INITIAL.
MOVE: L_MSEG-LFBNR TO L_IMSEG-LFBNR,
L_MSEG-LFBJA TO L_IMSEG-LFBJA,
L_MSEG-LFPOS TO L_IMSEG-LFPOS.
ENDIF.
MOVE L_MSEG-KDAUF TO L_IMSEG-KDAUF.
MOVE L_MSEG-KDPOS TO L_IMSEG-KDPOS.
MOVE L_MSEG-PS_PSP_PNR TO L_IMSEG-PS_PSP_PNR.
*/ Umlagerungsfelder setzen
MOVE:
L_MSEG-UMMAT TO L_IMSEG-UMMAT,
L_MSEG-UMWRK TO L_IMSEG-UMWRK,
L_MSEG-UMLGO TO L_IMSEG-UMLGO,
L_MSEG-UMCHA TO L_IMSEG-UMCHA.
*/ Storno-Beleg setzen
MOVE: L_MSEG-MJAHR TO L_IMSEG-SJAHR,
L_MSEG-MBLNR TO L_IMSEG-SMBLN,
L_MSEG-ZEILE TO L_IMSEG-SMBLP.
*/ Falsch gefüllte Felder initialisieren
CLEAR: L_IMSEG-MBLNR,
L_IMSEG-MENGE,
L_IMSEG-MEINS.
*/ Bewegungsart lesen
SELECT SINGLE XSTBW FROM T156 INTO L_XSTBW
WHERE BWART = L_IMSEG-BWART.
Page 14
IF NOT SY-SUBRC IS INITIAL.
P_SUBRC = 4.
EXIT.
ENDIF.
*/ Werk/Lagerort füllen
IF P_QALS-STAT11 IS INITIAL.
IF L_XSTBW IS INITIAL.
MOVE P_QALS-LAGORTVORG TO L_IMSEG-LGORT.
ELSE.
MOVE P_QALS-LAGORTVORG TO L_IMSEG-UMLGO.
ENDIF.
ENDIF.
IF L_XSTBW IS INITIAL.
MOVE P_QALS-WERKVORG TO L_IMSEG-WERKS.
ELSE.
MOVE P_QALS-WERKVORG TO L_IMSEG-UMWRK.
ENDIF.
*/ Zusätzliche Felder
MOVE P_QALS-MENGENEINH TO L_IMSEG-ERFME.
"MOVE P_GRUND TO L_IMSEG-GRUND.
"MOVE P_ELIKZ TO L_IMSEG-ELIKZ.
*/ Kennzeichen Storno-Buchung setzen
MOVE 'X' TO L_IMSEG-XSTOB.
MOVE P_QALS-PRUEFLOS TO L_IMSEG-QPLOS.
APPEND L_IMSEG TO L_IMSEG_TAB.
IF P_QALS-STAT11 IS INITIAL.
ADD L_IMSEG-ERFMG TO L_LMENGEZUB.
SUBTRACT L_IMSEG-ERFMG FROM L_LMENGEGEB.
ELSE.
IF L_IMSEG-KZBEW EQ SPACE
AND L_IMSEG-WERKS NE SPACE
AND L_IMSEG-LGORT NE SPACE
AND L_IMSEG-UMWRK NE SPACE
AND L_IMSEG-UMLGO NE SPACE
AND L_IMSEG-WERKS EQ L_IMSEG-UMWRK
AND L_IMSEG-UMLGO EQ L_IMSEG-UMLGO.
*/ Dummy Buchung bei WE-Sperrbestand & Stichprobe
ELSE.
ADD L_IMSEG-ERFMG TO L_LMENGEZUB.
SUBTRACT L_IMSEG-ERFMG FROM L_LMENGEGEB.
ENDIF.
ENDIF.
ENDLOOP.
IF NOT P_QALS-STAT11 IS INITIAL.
*/ Bei WE-Sperrbestand und Stichprobenbuchung Zeilen tauschen
DO.
READ TABLE L_IMSEG_TAB INDEX SY-INDEX INTO L_IMSEG.
IF SY-SUBRC IS INITIAL
AND L_IMSEG-KZBEW EQ SPACE
AND L_IMSEG-WERKS NE SPACE
AND L_IMSEG-LGORT NE SPACE
AND L_IMSEG-UMWRK NE SPACE
AND L_IMSEG-UMLGO NE SPACE
Page 15
AND L_IMSEG-WERKS EQ L_IMSEG-UMWRK
AND L_IMSEG-UMLGO EQ L_IMSEG-UMLGO.
IF SY-TABIX NE L_TABIX.
DELETE L_IMSEG_TAB INDEX SY-TABIX.
INSERT L_IMSEG INTO L_IMSEG_TAB INDEX L_TABIX.
L_TABIX = L_TABIX + 1.
ELSE.
L_TABIX = L_TABIX + 1.
CONTINUE.
ENDIF.
ELSEIF SY-SUBRC IS INITIAL.
CONTINUE.
ELSE.
EXIT. "from do
ENDIF.
ENDDO.
ENDIF.
*/QM deaktivieren
CALL FUNCTION 'QAAT_QM_ACTIVE_INACTIVE'
EXPORTING
AKTIV = SPACE.
*/Buchen
CALL FUNCTION 'MB_CREATE_GOODS_MOVEMENT'
EXPORTING
IMKPF = L_IMKPF
XALLP = 'X'
XALLR = 'X'
CTCOD = L_TCODE
XQMCL = ' '
IMPORTING
EMKPF = L_EMKPF
TABLES
IMSEG = L_IMSEG_TAB
EMSEG = L_EMSEG_TAB.
*/QM wieder aktivieren
CALL FUNCTION 'QAAT_QM_ACTIVE_INACTIVE'
EXPORTING
AKTIV = 'X'.
*/Buchung auswerten
IF L_EMKPF-SUBRC GT 1.
IF L_EMKPF-MSGID NE SPACE.
*/ Fehler auf Kopfebene
MESSAGE ID L_EMKPF-MSGID TYPE 'S'
NUMBER L_EMKPF-MSGNO
WITH L_EMKPF-MSGV1 L_EMKPF-MSGV2
L_EMKPF-MSGV3 L_EMKPF-MSGV4.
SUBMIT (SY-REPID) VIA SELECTION-SCREEN.
ELSE.
*/ Fehler auf Zeilenebene (Ausgabe des ersten Fehlers)
LOOP AT L_EMSEG_TAB INTO L_EMSEG.
IF L_EMSEG-MSGID NE SPACE.
MESSAGE ID L_EMSEG-MSGID TYPE 'S'
NUMBER L_EMSEG-MSGNO
WITH L_EMSEG-MSGV1 L_EMSEG-MSGV2
L_EMSEG-MSGV3 L_EMSEG-MSGV4.
Page 16
SUBMIT (SY-REPID) VIA SELECTION-SCREEN.
ENDIF.
ENDLOOP.
ENDIF.
ENDIF.
LOOP AT L_EMSEG_TAB INTO L_EMSEG.
CALL FUNCTION 'QAMB_COLLECT_RECORD'
EXPORTING
LOTNUMBER = P_QALS-PRUEFLOS
DOCYEAR = L_EMKPF-MJAHR
DOCNUMBER = L_EMKPF-MBLNR
DOCPOSITION = L_EMSEG-MBLPO
TYPE = '7'.
ENDLOOP.
*/Sonderkorrektur für Frei-An-Frei & WE-Sperr-An-We-Sperr
IF NOT P_QALS-STAT11 IS INITIAL.
IF P_QALS-LMENGE04 EQ L_LMENGEGEB.
ADD P_QALS-LMENGE04 TO L_LMENGEZUB.
SUBTRACT P_QALS-LMENGE04 FROM L_LMENGEGEB.
ENDIF.
ELSEIF P_QALS-INSMK IS INITIAL.
IF P_QALS-LMENGE01 GE L_LMENGEGEB
AND NOT P_QALS-LMENGE01 IS INITIAL.
ADD L_LMENGEGEB TO L_LMENGEZUB.
SUBTRACT L_LMENGEGEB FROM L_LMENGEGEB.
ENDIF.
ENDIF.
CLEAR: P_QALS-STAT34,
P_QALS-MATNRNEU,
P_QALS-CHARGNEU,
P_QALS-LMENGE01,
P_QALS-LMENGE02,
P_QALS-LMENGE03,
P_QALS-LMENGE04,
P_QALS-LMENGE05,
P_QALS-LMENGE06,
P_QALS-LMENGE07,
P_QALS-LMENGE08,
P_QALS-LMENGE09.
P_QALS-LMENGEZUB = L_LMENGEZUB.
IF NOT L_LMENGEGEB IS INITIAL.
P_SUBRC = 4.
ENDIF.
ENDFORM. " CREATE_GOODS_MOVEMENT
Form POST_GOODS_MOVEMENT *
Warenbewegung buchen *
FORM POST_GOODS_MOVEMENT.
CALL FUNCTION 'MB_POST_GOODS_MOVEMENT'.
Page 17
ENDFORM. " POST_GOODS_MOVEMENT
Form POST_DATA *
QM-Daten verbuchen *
FORM POST_DATA USING P_QALS LIKE QALS
P_QALS_LEISTE LIKE QALS
P_QAMB_TAB TYPE T_QAMB_TAB
P_QAMB_VB_TAB TYPE T_QAMB_TAB
P_SUBRC LIKE SY-SUBRC.
DATA:
L_STAT LIKE JSTAT,
L_STAT_TAB LIKE JSTAT OCCURS 0,
L_QAMB LIKE QAMB,
L_UPDKZ LIKE QALSVB-UPSL VALUE 'U'.
*/QAMBs umsetzen (7 = VE-Buchung storniert)
LOOP AT P_QAMB_TAB INTO L_QAMB.
L_QAMB-TYP = '7'.
APPEND L_QAMB TO P_QAMB_VB_TAB.
ENDLOOP.
*/BERF & BTEI zurücknehmen
CLEAR L_STAT. CLEAR L_STAT_TAB.
L_STAT-INACT = 'X'.
L_STAT-STAT = 'I0219'. APPEND L_STAT TO L_STAT_TAB. "BTEI
L_STAT-STAT = 'I0220'. APPEND L_STAT TO L_STAT_TAB. "BEND
CALL FUNCTION 'STATUS_CHANGE_INTERN'
EXPORTING
OBJNR = P_QALS-OBJNR
TABLES
STATUS = L_STAT_TAB
EXCEPTIONS
ERROR_MESSAGE = 1.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE 'S' NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
SUBMIT (SY-REPID) VIA SELECTION-SCREEN.
ENDIF.
*/Prüflos aktualisieren
CALL FUNCTION 'QPL1_UPDATE_MEMORY'
EXPORTING
I_QALS = P_QALS
I_UPDKZ = L_UPDKZ.
CALL FUNCTION 'QPL1_INSPECTION_LOTS_POSTING'.
CALL FUNCTION 'STATUS_UPDATE_ON_COMMIT'.
*/QAMB initialisieren
CALL FUNCTION 'QAMB_REFRESH_DATA'.
Page 18
PERFORM UPDATE_QAMB ON COMMIT.
P_SUBRC = 0.
ENDFORM. " POST_DATA
Form UPDATE_QAMB * -
QA32 UD for Handling Units results in a transfer posting delivery?
In our environment we have Handling Units, Serial Numbers and QM. In the mateial master the QM inspection types are set to inspecting by HU. The inspection lot gets created correctly and it references all the HUs. When we perform a usage decision and transfer the HUs to unrestricted stock in QA32. The system creates a transfer posting delivery that I then have to go and pick the HUs onto and then PGR the transfer posting delivery. It seems to me that because QA32 is working with the HUs it should direclty post the stock to unrestricted. I don't understand why I need this Transfer Posting Delivery.
Can anyone confirm that, yes indeed this is standard SAP behavior and we have to live with it or Am I missing something and no the system can directly post an HU with serial numbers form 'Q' stock to unrestricted via QA32.
Thanks for your help,
SteveHi,
The Standard SAP process is as follows,
1. GR --> Inbound Delivery created and stock is in 902Q
2. QM processes
3. Take Usgae Decision --> Transfer Posting Delivery Created
4. Create TO and confirm TO with reference to step 3 Delviery (Sotck moved from 902Q to 922Q then 922 without Q to 902 without Q(Unrestrcited use)) (This TO Creation and confirmation can be automated)
5. Now create TO and confirm TO with reference to Step 1 Delivery (Stock moved from 902 without Q (unrestriced)) to the permanent storage (unrestricted use stock).
I hope this will help you.
Regards,
K.Annadurai. -
Transfer Posting error upon u201CQM Usage Decision with WM HUu201D
Hello,
I am switching from the SAP system u201CUsing MIGO with WM (no SU) and Inspection Lot processingu201D to a process using u201CInbound Delivery with WM-HU and Inspection Lot processingu201D.
For e.g. I have a material with 10 pcs packed in one HU, PGRd and putaway. Inspection Lot is created for the HU containing 10 pcs. I am ideally hoping to do Posting change of 6 pcs to Unrestricted (with underlying mvmt typ 321) and Transfer Posting of 4 pcs to Qty. for Sample usage (with underlying mvmt typ 331).
In QA11, when I select posting key u201CVMENGE01 To Unrestricted useu201D, I get the error message u201CHandling Unit is locked. No assignment possible. Message No. HUFUNCTIONS007u201D. (I donu2019t have any document open to cause locking).
When I select posting key u201CVMENGE03 Qty. for Sample usageu201D, I get the error message u201CHandling Unit is locked. No assignment possible. Message No. QHU17u201D.
Here is the status in u201CInspection Lot Stocku201D tab of QA11.
u2022 Inspection Lot Qty.: 10 pcs
u2022 Sample size: 4 pcs
u2022 Status for u201CHU Transfer Postingu201D is Green
I am currently doing GR first and then putaway. Though I am open to doing putaway and then do PGR, if that can help, in any way.
Can anyone please help me with this issue? Please let me know if I need to provide more info. Thanks for your help in advance.hi
I did GR for 10 PCs with serial numbers. During QM, when usage decision, in the tab "Inspection lot stock", I input 8 PCs to the unres, 2 to blocked stock.
Upon posting, system pops up a Serial Number dialog showing "TF quality to unrest" with No. serial no is 10/8, and a list of 10 serial numbers.
I select 8 serial to post to unres. But still, the system keeps having error "Exactly 8 serial numbers must be selected (instead of 10)"...
This error is dur to
You have selected 28 to U/r & rest you want to put to Block.
so what system does is by default it will select first U/R qty which is 8.
While stock posting it is showing 10 Sr numbers.out of which you have to select 8 for U/R.
so only select those 2 numbers which you want to put to block...Click on delet(bucket)
now only 8 will remain which you wnat to put to U/R.
select all 8 and click on ok
save.
Rest of the 2 Sr number will automatically move to unrestricted.
This is how sap in UD works for Sr nos.
This will solve your problem.
Regards
Sujit -
Automatic triggering of transfer posting while usage decision
dear all,
My client wants to put automatic trigger of Transfer posting as soon as he finished the Quality inspection from the goods returns from the customer .can anybody help in this problem.
regards,
K.Thyagarajan
nullYou need to define a Follow-up fucntion in customisation (under Insp lot completion). Thi sfollow-up fucntion will have the fucntion module which does the Transfer posting.
Then you need to assign the follow-up fucntion in the UD code of the selected set in QS51.
Regards
Ram -
No Automatic Transfer order creation upon usage decision for 553 mtype
Scenario: We have quality and warehouse management active. Goods receipt is done against a purchase order. Stock comes into 902 storage type under stock category u201CQu201D. From 902 storage type, Goods issue to scrapping under quality( using IM movement type 553 ) is done using QA11. Normally, once GI to scrap under quality is done at IM level, WM movement type 551 gets triggered automatically in the background which creates a transfer order to move stock from 902 to 999 storage type under u201CQu201D stock category.
Problem: System unable to find storage bin for storage type 902 Q.
In our system, automatic TO creation from TR isnu2019t happening once the usage decision for 553 movement type happens. The TO creation process couldnu2019t recognize the stock which is available as u201CQu201D. It throws an error message u201Csource storage bin could not be foundu201D at the time of TO creation from TR. Putaway strategy for the physical storage types is FIXED BIN, MIXED STOCK ALLOWED and ADDITION TO EXISTING STOCK. 902 storage type has ADDITION TO EXISITNG STOCK and MIXED STOCK as a putaway strategy.
We have already activated auto TO creation settings at WM-IM reference movement types interface configuration.
Is there any setting missing at QM-WM interface?
Can someone please tell us a methodology to activate this transfer order creation process (WM mtype 551) for 553 IM mtype ?
Thanks in advance. Please reply.
Regards
Preetinder Singh
Phone: 404-468-8422Hello,
I do not understand your scenario , u are saying are posting inspection lot to non WM storage location and again saying system can not find bin automatically.
"A transfer requirement (movement type 311 / destination u201C921 Transferu201D) is created after the inspection lot posting (QA11) but the auto-creation functionality is not possible since the u201CSystem cannot find source storage binu201D.
How can this auto-creation of a transfer order be realized since it is possible to create the transfer order manually via LB11 (entering source u201C902u201D / storage bin u201CPurchase Order no.u201D)?
The system cannot find the storage bin automatically.
Thank you in advance!"
Please let me know are u using quality interim storage area. If you clear material from quality and want material to go to bin then it should be warehouse managed storage location.
Regards,
Prashant -
Unable to change stock posting date at usage decision while inspecting HUs
If we were using materials without WMS it's simple: thereu2019s a button in the screen for stock posting by which we're able to change document date and posting date; but we're using WM and the screen is slightly different: the button I'm referring it's gone!
So, how to change the posting date at posting stock in QA11 when we're using handle units? Some end-user told me that in version 4.7 this was possible. I don't think so ...unless there was something customized at WM IMG...or maybe they were using a USER EXIT to bring a pop-up window for this (I'm starting to believe that this was implemented..). This is the first time I work with HUs, so I don't know how to manage this.
Anyone?
Seba
Edited by: Sebastian Sniezyk on Apr 3, 2009 10:16 AMI solved it in this topic: Changing posting date at usage decision for handle units. How?
-
Issue while doing material posting through Usage Decision
Hi all,
I have an issue while doing material posting through Usage Decision. Please find below the details.
Inspection Lot 10000604689
Material 1730PCPBS.0031
Batch QP611097 GQ02
Out of total qty of 2100 we need to post the following
To unrestricted use 2,098
To sample usage 2
Following error appears,
Deficit of SL Stck.in qual.insp 1,638 NO : 1730PCPBS.0031 62GQ GQ02 QP611097
Message no. M7021
Diagnosis
Shortfall below the specified stock level or quantity amounting to 1,638 NO.
System Response
If the message is an error message (E), the above is not allowed.
If the message is a warning message (W), the system will allow your input, but the warning is intended to prevent you entering a wrong quantity.
Procedure
In the case of a warning message, check the quantity entered.
In the case of an error message, change the quantity or terminate processing.
I have checked that quantity 2100 of material 1730PCPBS.0031 is in QI stock. Kindly advice what is the issue and why we are getting the error?
Regards,
BrijeshHi Brijesh,
What is the status of inspection lot?
One of the possibilities I think could be inconsistencies between MM and QM.
Have a look on SAP note 48815- Checking possible inconsistencies between MM and QM.
Regards,
Anand Rao -
AFS-QM Error in stock posting performed by taking Usage decision
Hi all,
during stock posting with 105 mov type performed by taking Usage Decision (QA11), I faced with a strange system behavior, described beneath.
Previuos steps:
Purchase order creation
Partial Good receipt performed by MIGO, mov type 103 (Blocked stock from PO)
Automatic Creation of Inspection Lot
Error encountered:
If I take usage decision (QA11) for the inspection lot created, putting the stock checked in Unrestricted Use (correspondant mov type = 105), in the following good receipt (related to the same purchase order), the incoming stock available is less of the real quantity, previously accepted..
After some checks we understood that with 105 mov type the system doubles the real quantity previoulsy accepted, acting in the following manner:
Initial PO: 100 PZ
1° Good receipt: 30 PZ
(automatic creation of inspection lot)
If we take a usage decision, posting stock to unrestricted use (mov type 105), in the 2° Good receipt, the quantity available from the same PO is not 70 PZ (100 - 30), but only 40 PZ ! ! (100 - (30 * 2)) = 40
Please note that it does not occur if we post stock (always 105 mov type) with a MIGO transaction, so we are forced to think that the problem is strictly related to AFS-QM inventory posting, and not to 105 mov type or inbounding process.
Thanks for your collaboration,
Regards,
AleI'm not familiar with the specific apparel and footwear solution but with regards to QM, if you are using the standard SAP delivered stock postings, it should use 105 to accept the material to unrestricted for the GR blocked.
I would first use MB51 for the material and batch and review all the material movement documents. Look at the trail of movements and try to see where the changes happen.
In your example, what did the unrestricted inventory and GR blocked inventory show as stock levels?
I'd also check OSS for issues related to AFS/QM. This is not new functionality in SAP so I would be surprised if this was an actual bug or problem in the system that hasn't been seen before.
FF -
Reset Usage Decision and reverse posting in tcode QA12
Hi Friends,
I have a requirement to reset usage decision by creating a customer funtion button in tcode QA12 and reverse the posting quantity from restricted area to to be posted area.
I have implemented SAP Note# 175842.So now decision is getting reset but for reverse posting, i need to run RQEVAC50 program separately.But i need it in one go,like if user presses 'customer function' button, system should both reset the decision as well as reverse the posting quantity.
Can anybody tell me how to do this...
Many Thanks,
MadhuI am not sure but I have tried the same thing combining is possible when you do not have any stock posting praposal for selected set of UD.
What you have to do is make a separate program where implement aforesaid SAP note( as suggested in the note) and in the same program call for the screen to cancel the Usage decision(Read the user exit carefully)
QEVA0008-->Usage decision: Customer function key (e.g. to cancel UD) you can create a routine to call the screen & make changes in the background.
Seek help of Abaper !! -
USAGE Decision required before stock posting
Hi QM Gurus!
How do i configure the system so that it will require the user to ENTER A USAGE DECISION for a inspection lot first before he can make a posting in the INSPECTION LOT STOCK TAB in the same screen.
the requirement is that the user cannot make any postings from QM without making a usage decision.
I would appreciate any help.
Thank you,
Heinrick PaladHi,
The same can be acheived by creating a status profile with suitable object type (Insp. lot with or w/o plan or char.)using "BS02" & assign it to the Inspection type.
In the user status create an initial status say "INIT' & click on "Forbidden" against "Start inv. pstg bef. UsageDec". Create a second status say "UDAL' & click on "Set" against "Make usage decision".
This will surely solve your problem. Just test & revert.
Reward points if useful.
Rgds,
Srini
Edited by: Srini k on Dec 17, 2007 1:24 PM
Maybe you are looking for
-
NEED URGENT ASSISTANCE ON THE FOLLOWING..
MY NAME IS CRYSTAL I NEED HELP ON THE FOLLOWING ASSIGNMENT ASAP PLEASE REPLY WITH SOLUTION VIA EMAIL TO [email protected].. THANKS IN ADVANCE.. Write a C# program (WPF-Design the Screen layout) that reads an employee number, pay rate and the number o
-
.url files launch in IEplorerer instead of Safari
.url files launch in IExplorer instead of Safari, how can I fix it. I try to associate .url file (Internet Shortcut) to Safari, but windows vista does not let me change the Default Program (Internet Explorer. Any help will be appreciated. Thanks
-
FRM-30457: Warning: Maximum Length ignored for character-datatype subordinate mirror item DATA.FIELD2. This has really been bugging me. If you try to have a field use synchronize it is very very picky about it. Suppose you want to have char field2 be
-
How to disable browser back/forward buttons from JSF
Hi, I am working on one JSF based project I have a requirement where I don't want the application users to go back/forward using browser back/forward buttons so I want to disable the browser's back/forward buttons for my application. Can anyone tell
-
Hi I have a varchar column, the data in the column have no space in between. I want to keep space after every 20 characters while I select data from this column, how can I acheive this. thanks Royal Thomas