Selection of PRT
Dear Experts,
I have created PRT as a equipment and attched the same in the std routing. During the production order creation, system copy the PRT in production order.
But we have a sceneriao, where we manufacture the same material using different tools depending upon the situation.
Now user want the option for selection of tool during the production order confirmation and production order creation with refrence to planned order.
Please suggest the detail process for the same.
Thanks and Regards,
Chetan
Closing the thread.
Similar Messages
-
Dear Gurus,
Our clients main production process is casting. In casting process they are using many PRTs. For a given operation there may be many suitable PRTs. But each PRT need to be engaged for a considerable time (some times more than 4 days). Hence assignment of the PRT is required. But for a given material code/routing, there may more than 1 PRT is eligible. Hence I can not assign the PRT in routing. I want to assign the PRT during the creation of production order. My question is ... is there any possibility of interactive selection of PRT is available in SAP. In routing I need to mention that some PRT is required. But the particular PRT I will select only during the order selection. If I missed the selection of PRT during the creation of order, system should not allow me to release the order.
I think this concept is available in IS-mill. The requirement is there should be some PRT group. Initially in the routing I will assign the PRT group. And while creating the production order or releasing of the production order, I will select a particular PRT from the PRT group based on the availability. This I want to achieve in the standard SAP.
I am very thankful if anybody give some idea on how this can be achieved.
Regards,
Surya.Dears,
If any further clarification is required, please let me know. -
Need to read all entris for field prtxt from table /sapsll/prt
hi
i need to read all entries from table /sapsll/prt field prtxt but only one is coming
pls see below seelct statement
if not gt_sagmeld[] is initial.
SELECT /sapsll/cuit~guid_cuit " PK
/sapsll/cuit~QUANT_FLT " to be displayed
/sapsll/cuit~QUAUM " to be displayed
/sapsll/cuit~RPTDT " to be displayed
/sapsll/cuit~guid_cuhd
/sapsll/cuit~guid_pr " needed for gt_prt inttab
/sapsll/corref~refno
/sapsll/corref~guid_pobj
INTO corresponding fields of table gt_sapsllcuit
FROM ( ( /sapsll/cuit
inner join /sapsll/cuhd on /sapsll/cuit~guid_cuhd = /sapsll/cuhd~guid_cuhd )
inner join /sapsll/corref on /sapsll/corref~guid_pobj = /sapsll/cuhd~guid_cuhd )
FOR all entries in gt_sagmeld
WHERE /sapsll/cuit~guid_cuit = gt_sagmeld-guid_pobj.
endif.
if not gt_sapsllcuit[] is initial.
select /sapsll/prt~prtxt
/sapsll/prt~guid_pr
into corresponding fields of table gt_prt
from /sapsll/prt
for all entries in gt_sapsllcuit
where /sapsll/prt~guid_pr = gt_sapsllcuit-guid_pr.
loop at gt_sagmeld into wa_sagmeld.
read table gt_sapsllcuit into wa_sapsllcuit
with key guid_cuit = wa_sagmeld-guid_pobj
binary search.
Read table gt_prcon into wa_prcon with key
guid_pr = wa_sapsllcuit-guid_pr.
if sy-subrc = 0.
*wa_sagmeld_outtab-guid_pr = wa_prt-guid_pr.
here i am facing problem as multiple entries from table /sapsll/prt is not being displayed only one.....but i have checked in table it is having two enteries
pls suggest
reagards
NishantHi Nishant!
When you use 'for all entries' SAP (or database?) does a 'delete adjacent duplicates' on the result. This is necessary because of the special selection technique in this case.
You need to select enough columns from /sapsll/prt, so that your two entries will differ in the result.
Regards,
Christian -
PRT availaibility check in production order.
Hi
I have created PRT of type M and attached to operation and when i try do availaibility check in production order then iam getting message "PRT availability could not be checked"
What are pre-requisite for getting PRT availability check?
Is it possible to check PRT availability for all types of PRTs?Dear ,
You are facing this error due to PRT avialability check not activated in order type level while creation of production order .
To avoid this issue you need to goto -OPJK-Order Cotol -Select the order type , availability chek (1,2) .Here you need to keep
PRT Availablty Check tab -Checking Rule -01 and PRT Release -01 or 02 based on your requirement .
As prequisit : You need to create the PRT material master with availabilty check 01 and keep this in BOM.In CO02 -Operation Overview -Select the Operation -Hit on PRT button-It will apear with a screen Production Order Changes -PRT -Select the PRT material with Qty , Control Key .
Hope this will give u an idea .
Regards
JH -
Dear gurus!
Can any body let me know how to assign PRT in operative projects activities?Dear Prashant
U can assign PRT in the TCode:CN22 where in select the respective activity and select "Activity------>PRT Overview". But we have to create the PRT's before hand.
Regards
Murali -
Hi!
How do I create the PRT data tab on an equipment after it has been created...??
Cant find a way in IE02..
// Andreaswhen you create equipment manually trough IE01 there is a option to mention equipment category through which(view selection is based on equipment category) PRT tab gets activated.
When you create serial no- system creates equipment in the background (may be of different category depends on your configuration).
Once equipment is created you can also activate other views like PRT data, sales data, config data through menu in IE02
Edit > view selection> check PRT data/sales data etc.
Shakti -
CA11 Create Document type PRT for Operation
Hello,
We're in an ECC 5.0 system, needing to load Reference Operation sets. One of the requirements is to select an operation from the operation overview screen, select the PRT button and select Document from the popup. My problem is that a recording doesn't allow me to select a line from the table control (OK_CODE POSI is not recognized), and selecting the PRT button requires that one of the rows be selected. I looked at the direct input program RCPTRA02 briefly, but didn't see how a document type PRT would be created.
Thanks in advance for your help,
TedFound it in RCPTRA02, record type 11 by dumping an existing object.
-
Hi,
I have assigned long text in ABC PRT. After that I assigned this ABC prt to material (XYZ) routing to operation no 100. But surprisingly long text of ABC prt has not transferred to routing and I am unable to see it in XYZ routing 100 operation.
Does anybody have any idea about this issue?
Your valuble input is highly appericiated.
Regards,
AlexHi,
We should not get such type of error.
Please check once.
Select the operation no 100-> PRT Overview-> Select the PRT BAsic Data- > Long text.
In case you didn't find it there please give some more details of the problem.
Regards
JB -
Hi,
I'm following the below steps in SAP HELP to assign PRTs to an activity:
1. Call up a network or standard network in create or change mode.
2. Choose Goto ® Activity overview.
3. Select the activities to which you want to assign PRTs.
4. Choose Activity
® PRT overview.
5. Enter the relevant data on the detail screen.
1. Choose Back.
The PRT is allocated to the activity.
2. Save your data.
In the step #4, I cannot find ® PRT overview , so I cannot go on
Please help me!
Thanks, LongHi Varshal Kachole,
Thank you so much for the detail guide, I can assign PRTs to activities now.
I'm facing with a problem about PRT Availability Check. The error message:
PRT availability could not be checked
Message no. CF300
Diagnosis
You are attempting to carry out an availability check. However, you can not carry out the availability check for one of the following reasons:
No relevant entry could be found in the table controlling the availability check.
No checking rule could be found for the relevant entry in the table controlling the availability check
My steps
1. Select an activity in the activity overview and choose Activity PRT Overview.
2. Select the PRT whose availability you want to check.
3. Choose Edit --> Object -->Check availability
4. System throw the error message: "PRT availability could not be checked"
Please help again
Thanks
Long Nguyen -
QE51N Inspection Results and PRT
Hi All,
I have the following scenario:
- Production routing with QM operation and MIC linked to operation
- Also linked to operation I have a list of PRT
- Also linked to MIC I have a one PRT
My questions is about:
- Is that possible to define more than one PRT linked to MIC?
- Because I have a list of PRT linked to QM operation, how can I choose which PRT I use when results recording in QE51N? My nice to have scenario is to define the possible list of PRT to operation and then in results recording, the operator chose the PRT based on that list.
Can anyone help me to achieve this?
Regards
Rogério Reis
Edited by: Rogério Reis on Jan 3, 2011 9:24 AMThere is no standard way as SujitSND mentioned already.
An inspection characteristic of plan can have only one PRT.
and
Just idea.. You can try implementation of the inspection point for your requirement.
(You assign a PRT to insp. point when result recording.)
Also I would suggest you develop some function module to select a PRT on insp. point field.
Check the configuration
SPRO > Quality Management > Quality Planning > Inspection Planning > General > Define Identifier for Inspection Points
Regards
Luke -
Measuring Instrument Needs to be added in inspection plan for each part
Hi
How to assign the Measuring Instrument in the quality inspection plan for all the materials.
Whether i need to assign as material assignment or as PRT.
how to use prt to assign to the operation in the quality plan (task list)
Thanks
VRAJHi,
when i try to assign the Equipment for first Inspection Characteristics.
the system thru the ERROR as,
Production resource/tool is not intended for this type of task list
Message no. CF230
Diagnosis
You want to use the production resource/tool in a task list or work order with task list type Q. However, according to usage 004 of the PRT, this task list type does not exist.
Procedure
Change the usage of the PRT in the master record or select a PRT which can be used in this task list type.
How to resolve this issue. -
How to AUTO print DMS with Shop Paper without 3rd party software?
Since standard SAP cannot AUTOMATICALLY print DMS with shop paper.
Is there a way to AUTOMATICALLY print DMS with shop paper without using 3rd party software ? I've heard that there's a user exit or Function Modules that we can use so this will be possible. We don't really want to deal with 3rd party software if we can avoid it.
Has anyone resolved this problem without using 3rd party software?
Thank you,
SamIt would easier to get an ABAPER to debug the manual process and then use those function modules etc in the modified program.
The ability to print attached documents exists as a manual process of navigate and click, the process is as follows:
1. Access transaction IW32 (or IW33).
2. Enter order number (initial screen).
3. Click enter (change order central header screen).
4. Select the operations tab page (change order operation overview screen).
5. Select the relevant operation (change order operation overview screen).
6. Click the PRT icon (change order operation overview screen).
7. Select the PRT (PRT list of operation screen).
8. Click the PRT display button (PRT list of operation screen).
9. Click the print button (display document screen).
The process prerequisites are:
Work order created with assigned PRT document.
PRT documents.
DMS configuration to allow document to be opened and printed. -
hi,
I need to select all assigned equipments (PRT) for a plan (routing) operation (PLPO).
Can anybody tell me the database table relation or is there a function module or a BAPI or something like this !?
Thanks
Olaf
Edited by: Olaf Krüger on Feb 20, 2008 12:03 PM: BADI to BAPII suppose you have every PLPO needed (else look at function module WOSTS_TASKLIST_READ_FROM_DB)
Then read
PLMZ Allocation of bill of material items to operations
STPO BOM item
SELECT * FROM plmz INTO TABLE t_plmz
FOR ALL ENTRIES IN t_plpo
WHERE plnty = t_plpo-plnty
AND plnnr = t_plpo-plnnr
AND plnkn = t_plpo-plnkn.
SELECT * FROM stpo INTO TABLE t_stpo
FOR ALL ENTRIES IN t_plmz
WHERE stlty = t_plmz-stlty
AND stlnr = t_plmz-stlnr
AND stlkn = t_plmz-stlkn.
Regards -
Portal runtime error while selecting page layout in WPC editor
Hello,
in web page composer, editing page, when i click on "select page layout" I have a portal runtime error popup.
The logfile shows the following :
#1.5 #005056834112005E0000000C00000FA800048E28A94966CC#1282205196819#com.sap.portal.prt.runtime#sap.com/irj#com.sap.portal.prt.runtime#1016#149##n/a##7ff9c93eab6811dfa9c70000003307de#SAPEngine_Application_Thread[impl:3]_15##0#0#Error##Java###10:06_19/08/10_0010_3344350
[EXCEPTION]
#1#com.sapportals.portal.prt.servlets_jsp.server.compiler.CompilingException: Error occurs during the rendering of jsp component
Caused by: com.sapportals.portal.prt.servlets_jsp.server.compiler.CompilingException: Error in java compiling
Caused by: com.sapportals.portal.prt.servlets_jsp.server.compiler.CompilingException: E:
usr
sap
EPD
JC00
j2ee
cluster
server0
apps
sap.com
irj
servlet_jsp
irj
root
WEB-INF
portal
portalapps
com.sap.netweaver.bc.util
lib
bc.util.public_api.jar(com/sapportals/wcm/WcmException.java):24: class WcmException is public, should be declared in a file named WcmException.java
(source unavailable)
1 error
I have the same by clicking on "check assignments"
Any help ?
ThanksHello Jego.
We faced the same issue after upgrade to EHP1 SP07 last week and managed to solve it by modification of layout.jsp and com.sap.nw.wpc.layoutmanager.LayoutBean within com.sap.nw.wpc.designtime.par. SAP's code requires an additional catch handler, so it is better to rise an OSS message.
As a workaround you may change a default layout for wpc main page (good for new pages) or manually edit output.xml for existing pages.
Best regards,
Aliaksandr Zhukau -
Selection Criteria addition-Not working
Hi!
I have this report wherein I need to add two fields VBAP-Kunnr and knvv-konda in the selection screen so that I can do my drill down or search criteria based upon these two selections also apart from the existing ones, but unfortunately I am unable to get throiugh this and somehow putting this two selections in the selection criteria its not taking any effect or its just actinga dummy selection and I am unale to drill down my report based upon those. Can anyone have a look and let me know what could be the problem please. Help would be highly appreciated.
Thanks
*& Include ZSD_PFGENERATETOP Report ZSD_PFGENERATE
REPORT zsd_pfgenerate LINE-SIZE 170 LINE-COUNT 65.
TABLES: lips, likp, vbap, vbak, vbrp, vbpa, vbrk.
CONSTANTS: cns_vgtyp TYPE vbrp-vgtyp VALUE 'J',
cns_intyp TYPE vbrk-vbtyp VALUE 'M',
cns_vkorg TYPE vbak-vkorg VALUE 'CA01',
cns_vkorg_US type vbak-vkorg value 'US01', "DEVK903521
cns_parsh TYPE vbpa-parvw VALUE 'WE',
cns_parsp TYPE vbpa-parvw VALUE 'AG',
cns_parre type vbpa-parvw value 'RE', "bill-to
cns_auzwp TYPE vbak-auart VALUE 'ZWP',
cns_auzct TYPE vbak-auart VALUE 'ZCT',
cns_auzif TYPE vbak-auart VALUE 'ZIF',
cns_auztm TYPE vbak-auart VALUE 'ZTM',
cns_fkff TYPE vbrk-fkart VALUE 'ZFF5',
cns_fkos TYPE vbrk-fkart VALUE 'ZOF5',
cns_upd(1) TYPE c VALUE 'S',
cns_mode(1) TYPE c VALUE 'N'.
Internal Tables and Work Areas
DATA: BEGIN OF it_vbpos OCCURS 0,
werks TYPE vbap-werks,
audat TYPE vbak-audat,
auart TYPE vbak-auart,
kunag TYPE vbak-kunnr,
name1_ag TYPE kna1-name1,
kunsh TYPE likp-kunnr,
name1_sh TYPE kna1-name1,
vbeln TYPE vbak-vbeln,
posnr TYPE vbap-posnr,
vbdel TYPE likp-vbeln,
psdel TYPE lips-posnr,
kunre type kunre, "Bill-to Party
name1_re type kna1-name1, "Bill-to Party Name
END OF it_vbpos,
BEGIN OF it_vbpos_temp OCCURS 0,
vgbel TYPE lips-vgbel,
vgpos TYPE lips-vgpos,
vbeln TYPE vbak-vbeln,
posnr TYPE vbap-posnr,
END OF it_vbpos_temp,
BEGIN OF it_report OCCURS 0,
werks TYPE vbap-werks,
vbeln TYPE vbak-vbeln,
vbdel TYPE likp-vbeln,
audat TYPE vbak-audat,
auart TYPE vbak-auart,
name1_ag TYPE kna1-name1,
name1_sh TYPE kna1-name1,
name1_re type kna1-name1, "Bill-to Party Name
mark(1) TYPE c,
END OF it_report,
BEGIN OF it_vbeln OCCURS 0,
vbeln TYPE vbak-vbeln,
END OF it_vbeln,
wa_vbeln LIKE LINE OF it_vbeln,
wa_vbpos LIKE LINE OF it_vbpos,
wa_report LIKE LINE OF it_report,
wa_sel LIKE LINE OF it_report.
DATA: it_vbrp type table of vbrp,
it_vbrk type table of vbrk.
BDC Variables
DATA: BEGIN OF bdc_tab OCCURS 0.
INCLUDE STRUCTURE bdcdata.
DATA: END OF bdc_tab.
DATA: wa_bdc LIKE LINE OF bdc_tab,
it_bdcmess TYPE TABLE OF bdcmsgcoll.
*& Selection-Screen definition
SELECTION-SCREEN BEGIN OF BLOCK block2 WITH FRAME TITLE text-002.
PARAMETERS: p_rdff TYPE c RADIOBUTTON GROUP rad1 DEFAULT 'X',
p_rdos TYPE c RADIOBUTTON GROUP rad1.
SELECTION-SCREEN END OF BLOCK block2.
SELECTION-SCREEN BEGIN OF BLOCK block0 WITH FRAME TITLE text-000.
SELECT-OPTIONS: s_werks FOR vbap-werks OBLIGATORY NO INTERVALS,
s_auart FOR vbak-auart,
s_kunag FOR vbak-kunnr, "Sold-to Party
s_kunnr FOR likp-kunnr, "Ship-to Party
s_kunre for vbak-kunnr, "Bill to Party
s_vdatu FOR vbak-vdatu OBLIGATORY.
SELECTION-SCREEN END OF BLOCK block0.
SELECTION-SCREEN BEGIN OF BLOCK block1 WITH FRAME TITLE text-001.
PARAMETERS: p_vgbel TYPE vbak-vgbel.
SELECTION-SCREEN END OF BLOCK block1.
selection-screen begin of block block3 with frame title text-003.
parameters: p_billed RADIOBUTTON GROUP r1,
p_delvd RADIOBUTTON GROUP r1 default 'X',
p_all RADIOBUTTON GROUP r1.
selection-screen end of block block3.
*& Include ZSD_PFGENERATEE01
START-OF-SELECTION.
PERFORM read_report.
END-OF-SELECTION.
SET PF-STATUS 'STAT1000'.
IF it_vbpos[] IS INITIAL.
MESSAGE s999(z001) WITH 'No Data Selected for this criteria'.
ELSE.
PERFORM show_report.
ENDIF.
*& List Events
AT USER-COMMAND.
CASE sy-ucomm.
WHEN 'SELE'.
LOOP AT it_report INTO wa_report.
wa_report-mark = 'X'.
MODIFY it_report FROM wa_report.
ENDLOOP.
PERFORM show_report.
WHEN 'DSEL'.
LOOP AT it_report INTO wa_report.
wa_report-mark = ''.
MODIFY it_report FROM wa_report.
ENDLOOP.
PERFORM show_report.
ENDCASE.
AT LINE-SELECTION.
DO.
READ LINE sy-index FIELD VALUE wa_report-mark wa_report-vbeln
wa_report-vbdel.
IF sy-subrc NE 0.
EXIT.
ELSE.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
input = wa_report-vbeln
IMPORTING
output = wa_report-vbeln.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
input = wa_report-vbdel
IMPORTING
output = wa_report-vbdel.
READ TABLE it_report INTO wa_sel
WITH KEY vbeln = wa_report-vbeln.
IF sy-subrc EQ 0.
wa_sel-mark = wa_report-mark.
MODIFY it_report FROM wa_sel INDEX sy-tabix.
ENDIF.
ENDIF.
ENDDO.
REFRESH: it_vbeln.
LOOP AT it_report INTO wa_report WHERE mark EQ 'X'.
CASE 'X'.
WHEN p_rdff.
wa_vbeln = wa_report-vbdel.
WHEN p_rdos.
wa_vbeln = wa_report-vbeln.
ENDCASE.
APPEND wa_vbeln TO it_vbeln.
ENDLOOP.
SORT it_vbeln BY vbeln.
DELETE ADJACENT DUPLICATES FROM it_vbeln.
IF NOT it_vbeln[] IS INITIAL.
PERFORM process_vf01.
ENDIF.
*& Include ZSD_PFGENERATEF01
*& Form read_report
Routine to read applicable orders from database
FORM read_report.
DATA: lwa_lips TYPE lips,
lc_vbeln TYPE vbrk-vbeln.
Retrieve sales orders based on selection criteria where billing doc has not been
created for the delivery yet
REFRESH: it_vbeln, it_vbpos, it_report.
Select into table based on Onsite/Fixed Facility
CASE 'X'.
WHEN p_rdff.
changed for performance reasons (i.e. time-out)
k~vgbel is not in it_vbpos but was in select statment ?
SELECT vbap~werks vbak~audat vbak~auart vbak~kunnr AS kunag
vbak~vbeln vbap~posnr
INTO CORRESPONDING FIELDS OF TABLE it_vbpos
FROM vbak INNER JOIN vbap
ON vbak~mandt = vbap~mandt
AND vbak~vbeln = vbap~vbeln
WHERE vbap~werks IN s_werks
AND vbak~vdatu IN s_vdatu
AND vbak~vkorg in (cns_vkorg,cns_vkorg_US)
AND vbap~oid_ship IN s_kunnr
AND vbak~kunnr IN s_kunag
AND vbak~auart IN s_auart
AND ( vbak~auart = 'ZWP' or vbak~auart = 'ZIF' or
vbak~auart = 'ZCT' or vbak~auart = 'ZTM' or
vbak~auart = 'ZOIL' ).
IF SY-SUBRC = 0.
SELECT vgbel vgpos vbeln posnr FROM lips
INTO CORRESPONDING FIELDS OF TABLE it_vbpos_temp
FOR ALL ENTRIES IN it_vbpos
WHERE vgbel = it_vbpos-vbeln
AND vgpos = it_vbpos-posnr
%_hints oracle 'index ("LIPS" "LIPS~Z01")'.
SORT it_vbpos_temp by vgbel vgpos.
LOOP AT it_vbpos.
READ TABLE it_vbpos_temp
WITH KEY vgbel = it_vbpos-vbeln vgpos = it_vbpos-posnr
BINARY SEARCH.
IF SY-SUBRC = 0.
it_vbpos-vbdel = it_vbpos_temp-vbeln.
it_vbpos-psdel = it_vbpos_temp-posnr.
modify it_vbpos.
ENDIF.
ENDLOOP.
ENDIF.
WHEN p_rdos.
SELECT k~vbeln p~posnr k~kunnr AS kunag k~audat k~auart p~werks k~vgbel
INTO CORRESPONDING FIELDS OF TABLE it_vbpos
FROM vbak AS k INNER JOIN vbap AS p ON k~vbeln = p~vbeln
WHERE p~werks IN s_werks AND k~vdatu IN s_vdatu AND
k~vkorg in (cns_vkorg,cns_vkorg_US) AND "DEVK903521
k~vgbel EQ p_vgbel AND
k~kunnr IN s_kunag AND k~auart IN s_auart AND
p~oid_ship IN s_kunnr.
ENDCASE.
Determine if delivery has been billed out, if not can create PF Invoice - CHANGED
LOOP AT it_vbpos INTO wa_vbpos.
Check Ship-to in
SELECT SINGLE kunnr INTO wa_vbpos-kunsh FROM vbpa
WHERE parvw EQ cns_parsh AND vbeln EQ wa_vbpos-vbeln.
IF sy-subrc NE 0.
DELETE TABLE it_vbpos FROM wa_vbpos.
CONTINUE.
ENDIF.
Check for Bill-to
select single kunnr into wa_vbpos-kunre from vbpa
where parvw eq cns_parre and vbeln eq wa_vbpos-vbeln
and kunnr in s_kunre.
IF sy-subrc NE 0.
DELETE TABLE it_vbpos FROM wa_vbpos.
CONTINUE.
ENDIF.
Get Partner Texts
SELECT SINGLE name1 INTO wa_vbpos-name1_ag FROM kna1
WHERE kunnr EQ wa_vbpos-kunag.
SELECT SINGLE name1 INTO wa_vbpos-name1_sh FROM kna1
WHERE kunnr EQ wa_vbpos-kunsh.
SELECT SINGLE name1 INTO wa_vbpos-name1_re FROM kna1
WHERE kunnr EQ wa_vbpos-kunre.
CASE 'X'.
WHEN p_rdff.
IF p_delvd = 'X'.
optimized for performance reasons i.e. time-out
Check if delivery has been billed out
SELECT SINGLE k~vbeln INTO lc_vbeln
FROM vbrp AS p INNER JOIN vbrk AS k ON p~vbeln = k~vbeln
WHERE p~vgtyp EQ cns_vgtyp AND p~vgbel EQ wa_vbpos-vbdel AND
p~vgpos EQ wa_vbpos-psdel AND k~vbtyp EQ cns_intyp AND
k~fksto NE 'X'.
refresh: it_vbrp, it_vbrk.
select vbeln from vbrp
into corresponding fields of table it_vbrp
where vgtyp = cns_vgtyp and vgbel = wa_vbpos-vbdel
and vgpos = wa_vbpos-psdel
%_hints oracle 'index ("VBRP" "VBRP~Z01")'.
if sy-subrc = 0.
sort it_vbrp by vbeln.
delete adjacent duplicates from it_vbrp comparing vbeln.
select vbeln from vbrk
into corresponding fields of table it_vbrk
for all entries in it_vbrp
where vbeln = it_vbrp-vbeln
and vbtyp = cns_intyp and fksto 'X'.
IF sy-subrc EQ 0.
DELETE TABLE it_vbpos FROM wa_vbpos.
CONTINUE.
ENDIF.
endif.
ELSEIF p_billed = 'X'.
Check if delivery hasn't been billed out
SELECT SINGLE k~vbeln INTO lc_vbeln
FROM vbrp AS p INNER JOIN vbrk AS k ON p~vbeln = k~vbeln
WHERE p~vgtyp EQ cns_vgtyp AND p~vgbel EQ wa_vbpos-vbdel AND
p~vgpos EQ wa_vbpos-psdel AND k~vbtyp EQ cns_intyp AND
k~fksto NE 'X'.
refresh: it_vbrp, it_vbrk.
select vbeln from vbrp
into corresponding fields of table it_vbrp
where vgtyp = cns_vgtyp and vgbel = wa_vbpos-vbdel
and vgpos = wa_vbpos-psdel
%_hints oracle 'index ("VBRP" "VBRP~Z01")'.
if sy-subrc = 0.
sort it_vbrp by vbeln.
delete adjacent duplicates from it_vbrp comparing vbeln.
select vbeln from vbrk
into corresponding fields of table it_vbrk
for all entries in it_vbrp
where vbeln = it_vbrp-vbeln
and vbtyp = cns_intyp and fksto 'X'.
IF sy-subrc NE 0.
DELETE TABLE it_vbpos FROM wa_vbpos.
CONTINUE.
ENDIF.
endif.
ENDIF.
WHEN p_rdos.
IF p_delvd = 'X'.
Check if order has been billed out
SELECT SINGLE * FROM vbrp
WHERE vbeln EQ wa_vbpos-vbeln AND
vgpos EQ wa_vbpos-posnr.
IF sy-subrc EQ 0.
DELETE TABLE it_vbpos FROM wa_vbpos.
CONTINUE.
ENDIF.
ELSEIF p_billed = 'X'.
Check if delivery hasn't been billed out
SELECT SINGLE k~vbeln INTO lc_vbeln
FROM vbrp AS p INNER JOIN vbrk AS k ON pvbeln = kvbeln
WHERE pvgtyp EQ cns_vgtyp AND pvgbel EQ wa_vbpos-vbdel AND
pvgpos EQ wa_vbpos-psdel AND kvbtyp EQ cns_intyp AND
k~fksto NE 'X'.
refresh: it_vbrp, it_vbrk.
select vbeln from vbrp
into corresponding fields of table it_vbrp
where vgtyp = cns_vgtyp and vgbel = wa_vbpos-vbdel
and vgpos = wa_vbpos-psdel
%_hints oracle 'index ("VBRP" "VBRP~Z01")'.
if sy-subrc = 0.
sort it_vbrp by vbeln.
delete adjacent duplicates from it_vbrp comparing vbeln.
select vbeln from vbrk
into corresponding fields of table it_vbrk
for all entries in it_vbrp
where vbeln = it_vbrp-vbeln
and vbtyp = cns_intyp and fksto 'X'.
IF sy-subrc NE 0.
DELETE TABLE it_vbpos FROM wa_vbpos.
CONTINUE.
ENDIF.
endif.
ENDIF.
ENDCASE.
MOVE-CORRESPONDING wa_vbpos TO wa_report.
APPEND wa_report TO it_report.
MODIFY it_vbpos FROM wa_vbpos.
ENDLOOP.
if 'onsite field summary', then process by release sales orders
IF p_rdos = 'X'.
sort it_report by vbeln.
delete adjacent duplicates from it_report comparing vbeln.
else.
SORT it_report BY werks name1_ag name1_sh vbeln.
DELETE ADJACENT DUPLICATES FROM it_report.
endif.
SORT it_report BY name1_sh werks name1_ag vbeln.
ENDFORM. " read_report
*& Form process_vf01
Call transaction VF01 and fill screen table with order values
FORM process_vf01.
DATA: ln_index(2) TYPE n,
lc_field(20) TYPE c,
lc_fkart TYPE vbrk-fkart,
li_lines TYPE i,
lc_msgtxt(99) TYPE c,
lwa_bdcoptions TYPE ctu_params,
lwa_mess LIKE LINE OF it_bdcmess.
REFRESH: it_bdcmess.
lwa_bdcoptions-dismode = cns_mode.
lwa_bdcoptions-updmode = cns_upd.
CASE 'X'.
WHEN p_rdff.
lc_fkart = cns_fkff.
WHEN p_rdos.
lc_fkart = cns_fkos.
ENDCASE.
REFRESH: bdc_tab.
PERFORM update_bdc USING: 'X' 'SAPMV60A' '0102',
' ' 'BDC_CURSOR' 'RV60A-FKART',
' ' 'RV60A-FKART' lc_fkart,
' ' 'BDC_OKCODE' '/00'.
LOOP AT it_vbeln INTO wa_vbeln.
ln_index = sy-tabix.
Up to the second delivery of the BDC add the Delivery to the screen, after that click the More Documents for every entry. logic changed for DEVK902353
CASE ln_index.
WHEN 1.
CONCATENATE 'KOMFK-VBELN' '(' ln_index ')' INTO lc_field.
PERFORM update_bdc USING: ' ' lc_field wa_vbeln.
WHEN 2 OR 3.
IF p_rdos 'X'.
CONCATENATE 'KOMFK-VBELN' '(' ln_index ')' INTO lc_field.
PERFORM update_bdc USING: ' ' lc_field wa_vbeln,
'X' 'SAPMV60A' '0102',
' ' 'BDC_OKCODE' 'FKAN'..
ELSE.
CONCATENATE 'KOMFK-VBELN' '(' ln_index ')' INTO lc_field.
PERFORM update_bdc USING: ' ' lc_field wa_vbeln.
ENDIF.
WHEN OTHERS.
If p_rdos 'X'.
CONCATENATE 'KOMFK-VBELN' '(2)' INTO lc_field.
PERFORM update_bdc USING: ' ' lc_field wa_vbeln,
'X' 'SAPMV60A' '0102',
' ' 'BDC_OKCODE' 'FKAN'.
endif.
ENDCASE.
ENDLOOP.
VF01 will go to a different screen if only one line selected
DESCRIBE TABLE it_vbeln LINES li_lines.
IF li_lines EQ 1.
PERFORM update_bdc USING: 'X' 'SAPMV60A' '0104',
' ' 'BDC_OKCODE' '=SICH'.
ELSE.
PERFORM update_bdc USING: 'X' 'SAPMV60A' '0102',
' ' 'BDC_OKCODE' '=SICH'.
ENDIF.
CALL TRANSACTION 'VF01' USING bdc_tab OPTIONS FROM lwa_bdcoptions
MESSAGES INTO it_bdcmess.
WRITE: / 'BDC Messages:'.
SKIP.
LOOP AT it_bdcmess INTO lwa_mess.
CALL FUNCTION 'RH_MESSAGE_GET'
EXPORTING
arbgb = 'VF'
msgnr = lwa_mess-msgnr
msgv1 = lwa_mess-msgv1
msgv2 = lwa_mess-msgv2
msgv3 = lwa_mess-msgv3
msgv4 = lwa_mess-msgv4
IMPORTING
msgtext = lc_msgtxt
EXCEPTIONS
message_not_found = 1
OTHERS = 2.
WRITE: /5 lc_msgtxt.
ENDLOOP.
ENDFORM. " process_vf01
form update_bdc *
subroutine to add the data to the bdc table for trans. vf01 *
FORM update_bdc USING dynpro field content.
CLEAR bdc_tab.
IF dynpro EQ 'X'.
bdc_tab-program = field.
bdc_tab-dynpro = content.
bdc_tab-dynbegin = 'X'.
ELSE.
bdc_tab-fnam = field.
bdc_tab-fval = content.
ENDIF.
APPEND bdc_tab.
ENDFORM. "UPDATE_BDC
*& Form show_report
Report to Display Available Orders on Screen
FORM show_report .
DATA: l_idx TYPE i.
WRITE: / 'Available Orders/Deliveries for Plant:'.
LOOP AT s_werks.
WRITE: s_werks-low.
ENDLOOP.
SKIP.
FORMAT INTENSIFIED ON COLOR COL_HEADING.
WRITE: /5 text-h01, text-h02.
CASE 'X'.
WHEN p_rdff.
WRITE: text-h06.
ENDCASE.
WRITE: text-h03, text-h04, text-h05, text-h07,
/ sy-uline.
FORMAT INTENSIFIED OFF COLOR OFF.
l_idx = 0.
LOOP AT it_report INTO wa_report.
IF l_idx EQ 0.
FORMAT COLOR COL_NORMAL INTENSIFIED ON.
l_idx = 1.
ELSE.
FORMAT COLOR COL_NORMAL INTENSIFIED OFF.
l_idx = 0.
ENDIF.
WRITE: / wa_report-mark AS CHECKBOX,
wa_report-auart UNDER text-h01,
wa_report-vbeln UNDER text-h02.
CASE 'X'.
WHEN p_rdff.
WRITE: wa_report-vbdel UNDER text-h06.
ENDCASE.
WRITE: wa_report-audat UNDER text-h03,
wa_report-name1_ag UNDER text-h04,
wa_report-name1_sh UNDER text-h05,
wa_report-name1_re under text-h07.
HIDE: wa_report-mark, wa_report-vbeln, wa_report-vbdel.
ENDLOOP.
ENDFORM. " show_report
Thanks for your kind help.
Aarav.Hi, Anne-Marie;
You may be running into a common issue that is docuemented here:
[SelectionFormula|https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/oss_notes_boj/sdn_oss_boj_erq/sap(bD1lbiZjPTAwMQ==)/bc/bsp/spn/scn_bosap/notes%7B6163636573733d36393736354636443646363436353344333933393338323636393736354637333631373036453646373436353733354636453735364436323635373233443330333033303331333233303334333833393335%7D.do]
Regards,
Jonathan
Edited by: Jonathan Parminter on Mar 16, 2009 8:03 AM
Maybe you are looking for
-
Error while installing BI Publisher Desktop - Plz Help
Hi all, Getting following error while trying to install Oracle BI Publisher desktop Template Builder Installer failed: Unexpected Error -> I've downloaded "BI Publisher Desktop 10.1.3.4.2 for Windows" software from the following link http://www.oracl
-
My email address has come online as a Skype accoun...
I just declined a couple of contact requests from people I have never heard of, and stratight afterwards I received a notification that '(my email address) is online'. My Skype name is NOT the same as my email address and I have not set up a Skype ac
-
Licensing...
Hi, Your link to licensing details : ( http://www.sap.com/solutions/sapbusinessobjects/sme/reporting-dashboarding/reporting/eclipse/technicaldetails/index.epx) on download page (http://www.businessobjects.com/campaigns/forms/downloads/crystal/eclipse
-
Hi All, I am facing the BSP problem in the EP my problem is ... Business Server Page (BSP) error What happened? Calling the BSP page was terminated due to an error. SAP Note The following error text was processed in the system: BSP Exception: Das Obj
-
Reg : I need help on function module/BAPI
Hi Guru's, I want to pass plant address number in BAPI "BAPI_PO_CREATE1" but i found that to pass address number for vendor.. Please guide me to pass plant address field in purchase creation bapi.. Regards P.Senthil Kumar