Problem in SAP standard code modification for FB03
Hi Experts,
I am adding 4custom fields in FB03 tcode by doing a SAP standard code modification in SE51.
The program name is SAPMF05L and screen no. is 302(In some SAP verion, it is 304). This is the screen for document line item of an invoice.
My problem is:
When I add the fields in the screen, in which module will I put logic in the PBO and PAI as I am unable to figure out the German comments and the program structuring.
Also, if anybody can tell me what to write as I am little bit confused about the logic of populating my fields with the values.
FB03 is a display transaction so I have to keep my custom screen fields disabled.
Regards,
Sangeeta.
Hi Sangeeta,
For enhancing the screen of this Tcode, first of all search is there any Screen enhancement is provided by SAP or not and in case if it is provided then use that only.
Regards
Jagesh Lakdawala
Similar Messages
-
SAP Standard Field Attributes for ME21n and ME
Hi,
Can anyone suggest me where i can see all the display,Hidden,Mandatory, optional SAP Standard field attributes for ME21N and ME51N.
I looking for Configuration settings
Thanks
VenkiHi ,
All i see is Field Label Reqd.entry Opt. entry Display for ME21N and ME51N
I want to see what SAP Standard Fields are Hidden for these T-codes.
I want to use and Non Used Field ( Hidden SAP Field) for new Enhancement instead of creating a custom Tab
Thanks
Venki -
SAP Standard script name for Goods reciept.
SAP Standard script name for Goods reciept.
Check this,it may help u
Program:SAPM07DR
Form: WESCHEINVERS3
Regards -
SAP standard File formats for payments
Hi Gurus,
Can any one of you kindly provide the SAP standard file formats for "Check" and "WIRE" payments for the bank interface?
With the SAP standard file formats I need to contact my client's bank to know whether they can support the standard format for the interface.
Early response will be appreciated.
Thanks for the help.
Regards,
SPHi,
Good evening and greetings,
Please go through the following link
http://help.sap.com/saphelp_erp2005vp/helpdata/en/70/42753ced012a49e10000000a11402f/frameset.htm
Please reward points if found useful
Thanking you
With kindest regards
Ramesh Padmanabhan -
SAP Standard BI extractor for EhP4/5 Performance Management Solution
Hi,
Are they any SAP Standard BI extractors for Performance Management Solution EhP4/5? Could you please be so kind to tell me where can i find the info about it?
...Naddy[here|http://help.sap.com/erp2005_ehp_05/helpdata/EN/3e/80d8cd269142db93cdcffeecfa2a93/frameset.htm] is the BI Content foe EhP5 Perf.Mgt,
-
Re: problem in sap standard
Hello,
What is the note number.Hi paluri,
1. are u asking What is oss notes ?
2. are u asking the SPECIFIC Note number
for some problem (in that case
u have not mentioned any problem)
For 1.
1. OSS Notes
All customers who have implemented SAP
must be facing some or the other problem.
To remedy such problems,
SAP comes out with some mini - mini
solutions from time to time.
Such solutions, require some modifications
in the SAP source code.
The corrections can be done manually / automatically
at the users end.
Such notes contain step-by-step instructions
on what to do, how to do etc.
There are SEVERAL such NOTES
(Correction Instructions/Patch)
They are called OSS NOTES.
TCODE Of Notes
1. . The Tcode is OSS1.
2. But,
U will have to contact ur basis team
bcos
they will open the internet gateway
for oss1.
3. Moreover,
oss1 will login to SAP server
in Bangalore (if u are in india)
4. There also a login screen will be there.
There u need a user id and a password.
(It might be some common userid and pasword
which ur basis team might be able to provide)
I hope it helps.
regards,
amit m.
Message was edited by: Amit Mittal -
Problem when creating standard recipient list for all documents
Dear All,
I am facing 'NO_RELATION_EXIST' dump issue. So i am following note 509191 provided by SAP. At the moment i am trying 2nd option i.e. for automatic document distribution, i am trying to create one standard recipient list for all documents to be released. However when i try creating a recipient list it does not allow me to create for a particular document type. As i can see there are 2 important key fields Document no and Document type. But i want to create only for a document type. The reason for that is this document type is for a PR attachment. So as soon as a PR gets released by the final approver this distribution should happen, irrespective of document number.
Please let me know if this is possible. I would like to apologize if it's too simple of a question as i am an ABAP person and have no knowledge in DMS. And there is no DMS consultant whom i can approach.
Thanking in advance.
Regards,
Saud...distribution should happen, irrespective of document number...
This wouldn't be feasible because documents are identified in the recipient list by both,the document number and document type and hence are mandatory inputs.
Regards,
Pradeepkumar Haragoldavar -
ABAP Code Modification for Command Tickets
Hi Experts
Modification to processing of Command Orders & Tickets
We require a modification to the processing being performed on sales data originating from the Command Concrete system and potentially from other systems yet to come online (e.g. Reddies Cement plant).
The Sap process involved is
ZINT_INBOUND_POLLING and within that,
ZINT_CSTPORD_ROUTINES.
The problem
Currently there is an assumption that every sales order (and its deliveries) will include a product which is made to order, i.e. for which a production order will be required.
In ZINT_CSTPORD_ROUTINES, a check is made to identify the production order linked to the sales order. If there is no such production order (usually because of the customeru2019s credit status) then processing of the ticket is terminated.
This assumption would fall down if an order was to be raised (in Command) on which there is no concrete material. For example, if we sold a bag of pigment or a screed to a customer. In this case the item would be sold from stock and there would be no need for a production order
The solution
In the routine which checks for the existence of a production order, modify the code as follows:
Inspect each item on the sales order
If (and only if) there is at least one item with a category of u201CZTACu201D then check for a production order, otherwise process the order in the usual manner.
The following Coding of programs are below.
Report: ZINT_INBOUND_POLLING
Description: REDDIES Interfaces: Polling Job for Inbound Interfaces
This report is a general file polling and distribution job for
inbound interfaces. Interfaces are identified by their assigned ID
and type values (refer to table ZINT_ADMIN). The polling job can be
run only for a single interface. This restriction has been implemented
for performance reasons. Dependent interfaces should be set up as
separate, dependent jobs in SM37.
For an interface to be triggered by this report, it must have:
1. Administrative parameters entered in table ZINT_ADMIN.
2. Other parameters (eg. organisational data such as plant or store)
entered in table ZINT_PARAM.
3. An interface-specific function module created in accordance with
the inbound interface template (ZINT_INBOUND_INTERFACE).
4. An interface-specific directory structure. This structure must
be reflected in the directory parameters of table ZINT_ADMIN.
Note that the directory names supplied in ZINT_ADMIN must exactly
match those used for the actual directories.
This job is designed to run as a periodic background job, but can
also be run on-line when required.
On each execution, the program performs the following tasks:
1. Validate all selection parameters.
2. Read interface administration and other parameters.
3. Check the inbound directory to see if there are any new files.
4. If there is a new file.
4.1 Read the data and update the interface log.
4.2 Archive the data and update the interface log.
4.3 Call the interface function module, sending data and parameters.
4.4 Log any messages returned from the function module.
5. Exit.
Please document all changes to this job carefully and clearly. Major
additions to functionality should be put in new, parameterised form
routines wherever possible to sustain maintainablility of the code.
Change History:
Date User Request Description
07/02/2006 EDWG WG1K902600 Original program.
20.07.2007 ROBS Changes to handle error messages better.
report zint_inbound_polling line-size 170
line-count 58(2)
message-id zz
no standard page heading.
Global Data Declarations
include zint_interface_data.
data: begin of tbl_messages occurs 0,
line(132) type c,
end of tbl_messages.
--Field Symbols--
field-symbols: <function>.
--Global Variables--
Selection Screen
--Interface Mode--
RJS Start >>>
selection-screen begin of block b1 with frame title t_mode.
parameters: p_upl radiobutton group p1.
selection-screen skip 1.
select-options: s_intid for zint_intid-zint_id
matchcode object zint_intid,
s_intty for zint_intty-zint_ty
matchcode object zint_intty.
selection-screen uline.
parameters: p_pro radiobutton group p1.
selection-screen skip 1.
RJS End <<<
Interface ID
parameters: p_intid like zint_intid-zint_id
matchcode object zint_intid.
Interface type
parameters: p_intty like zint_intty-zint_ty
matchcode object zint_intty
default 'I'.
IDOC group or set
parameters: p_intis type zint_is.
select-options: s_datum for zint_data-created_on.
selection-screen skip 1.
parameters: p_dlgrp as checkbox default c_false.
data: p_alone(1) type c value 'X'.
selection-screen skip 1.
Interface parameter set and sequence number.
parameters: p_intsi like zint_param-zint_si,
p_intsq type zint_sq default '001' no-display.
selection-screen uline.
parameters: p_apsrv radiobutton group r1,
p_pc radiobutton group r1.
selection-screen skip 1.
parameters: p_nowar as checkbox default c_true.
selection-screen end of block b1.
Event Processing
--IDOC Set Values--
at selection-screen on value-request for p_intis.
Display a selectable list of parameter sets
perform select_idoc_set using p_intid
p_intty
changing p_intis
v_rtcod.
if v_rtcod ne c_noerr.
Problem displaying parameter lists
message i000 with 'Unable to display IDOC set values.'
'Please enter an interface ID and type.'.
endif.
--Parameter Set Values-----
at selection-screen on value-request for p_intsi.
Display a selectable list of parameter sets
perform select_parameter_set using p_intid
p_intty
changing p_intsi
v_rtcod.
if v_rtcod ne c_noerr.
Problem displaying parameter lists
message i000 with 'Unable to display parameter list values.'
'Please enter an interface ID and type.'.
endif.
--Check Interface Admin.---
at selection-screen on: p_intty, p_intid.
perform validate_interface_admin using p_intid
p_intty
changing v_rtcod.
if v_rtcod ne c_noerr.
No administration parameters exist for interface
message e001 with p_intid p_intty.
endif.
--Validate Parameter Set---
at selection-screen on p_intsi.
perform validate_interface_param using p_intid
p_intty
p_intsi
changing v_rtcod.
if v_rtcod ne c_noerr.
Parameter set does not exist for interface
message e002 with p_intsi p_intid p_intty.
endif.
Initialisation
initialization.
perform set_screen_texts.
Start of Selection
start-of-selection.
RJS Start >>>
refresh: tbl_totals, tbl_messages.
UPLOAD INBOUND DATA ---------------------
if p_upl = 'X'.
perform upload_data.
PROCESS NEW or ERRORS -------------------
else. " p_pro = 'X'.
perform process_data.
endif.
RJS End <<<
End of Selection
end-of-selection.
Write the log file to the specified directory
read table t_ibfil index 1.
perform write_log_file tables t_ldata
using s_admin-zint_lg
t_ibfil-filename
p_apsrv
changing v_rtcod.
if v_rtcod ne c_noerr.
Error writing to log file
message i000 with 'Could not write to log file for interface'
s_admin-zint_id '/' s_admin-zint_ty.
endif.
RJS Start >>>
Write out Messages and totals
if p_pro = 'X'. " Processing Data
describe table tbl_messages lines sy-tfill.
if sy-tfill = 0.
write:/ 'Processing Complete. Use ZSTA to analyse'.
else.
loop at tbl_messages.
write:/ tbl_messages-line.
endloop.
endif.
else. " Uploading Data
format color col_total.
uline.
write:/ 'Upload Details:', 132 space.
uline.
format color off.
describe table tbl_totals lines sy-tfill.
if sy-tfill = 0.
write:/ '0 Records Processed'.
endif.
loop at tbl_totals.
write:/ 'Interface ID:', tbl_totals-zint_id,
' Type:', tbl_totals-zint_ty,
' Command Date:', tbl_totals-created_on,
' Records Processed:', tbl_totals-count.
endloop.
uline.
message s999(b1) with 'Data Upload Completed'
'- Please see full Results uing trans ZSTA'.
endif.
RJS End <<<
Form Routines
include zint_interface_routines.
*& Form upload_data
text
form upload_data.
data: lt_admin type standard table of zint_admin with header line.
data: l_message(80) type c.
select * from zint_admin into table lt_admin
where zint_id in s_intid
and zint_ty in s_intty.
loop at lt_admin.
refresh t_idata.
refresh t_ibfil.
Progress Message
concatenate 'Reading Inbound data files in'
lt_admin-zint_ib
into l_message separated by space.
call function 'SAPGUI_PROGRESS_INDICATOR'
exporting
PERCENTAGE = 0
text = l_message.
Check for a new inbound file and read its data.
perform read_inbound_data tables t_idata
t_ibfil
using lt_admin-zint_ib
p_apsrv
changing v_rtcod.
if v_rtcod ne c_noerr and
v_rtcod ne 7 and " RJS- no files found
lt_admin-zint_ib ne space.
Write an error to the log
perform write_log_entry
tables t_ldata
using 'E'
'ZINT_INBOUND_POLLING'
'READ_INBOUND_DATA'
'Problem reading inbound interface file.'
p_nowar space.
exit.
endif.
Exit if there is no data.
describe table t_idata lines v_fldsz.
check v_fldsz gt 0.
Write inbound data to a database table, for later access
perform write_data tables t_idata
using lt_admin-zint_id
lt_admin-zint_ty
lt_admin-zint_fm
lt_admin-zint_ib.
Move the inbound file to the archive directory
perform archive_inbound_data tables t_ibfil
using p_apsrv
lt_admin-zint_ar
lt_admin-zint_ib
changing v_rtcod.
if v_rtcod ne c_noerr.
Write an error to the log if unable to move file
perform write_log_entry
tables t_ldata
using 'E'
'ZINT_INBOUND_POLLING'
'ARCHIVE_INBOUND_DATA'
'Problem archiving inbound interface file.'
p_nowar space.
endif.
endloop.
endform. "upload_data
*& Form process_data
text
form process_data.
data: lt_idata type standard table of x_idata with header line.
data: s_idata type x_idata,
l_last_status(3) type c.
data: l_message(80) type c,
l_status(3) type c,
l_lines(5) type c,
l_date(10) type c.
Validate input parameters
if p_intid = space
or p_intty = space
or p_intsi = space.
message e999(b1) with 'Mandatory fields must be filled'.
endif.
Read the interface administration parameters
perform get_admin_parameters using p_intid
p_intty
changing s_admin
v_rtcod.
if v_rtcod ne c_noerr.
Write an error to the log
perform write_log_entry
tables t_ldata
using 'E'
'ZINT_INBOUND_POLLING'
'GET_ADMIN_PARAMETERS'
'No admin. parameters for interface. Check ZINT_ADMIN'
p_nowar space.
endif.
Read the other interface parameters (if required)
if p_intsi ne space.
perform get_other_parameters tables t_param
using p_intid
p_intty
p_intsi
changing v_rtcod.
if v_rtcod ne c_noerr.
Write an error to the log
perform write_log_entry
tables t_ldata
using 'E'
'ZINT_INBOUND_POLLING'
'GET_OTHER_PARAMETERS'
'No org. parameters for interface. Check ZINT_ADMIN'
p_nowar space.
endif.
endif.
Read any Error records for reprocessing - if none, read New data
perform read_data tables t_zint_data
changing v_rtcod.
clear l_status.
loop at t_zint_data.
Create subset of all records, per Command Date
at new created_on.
refresh t_idata.
clear l_lines.
endat.
at new key_val.
add 1 to l_lines.
endat.
append t_zint_data-raw_data to t_idata.
Process one date at a time
at end of created_on.
Progress Message:
write t_zint_data-created_on to l_date dd/mm/yyyy.
concatenate 'Processing' l_lines 'records for'
p_intid '/' p_intty '/' p_intsi 'Created:'
l_date
into l_message separated by space.
call function 'SAPGUI_PROGRESS_INDICATOR'
exporting
text = l_message.
Process the incoming data
assign s_admin-zint_fm to <function>.
call function <function>
exporting
i_zint_id = p_intid
i_zint_ty = p_intty
i_zint_si = p_intsi
i_zint_is = p_intis
i_zint_dl = p_dlgrp
i_zint_as = p_apsrv
i_zint_al = p_alone
i_zint_nw = p_nowar
i_zint_sq = p_intsq
tables
t_zint_mslog = t_ldata
t_zint_idata = t_idata
t_zint_param = t_param
changing
c_zint_rc = v_rtcod
exceptions
no_such_interface = 1
invalid_parameter_set = 2
data_table_empty = 3
invalid_idoc_group = 4.
case sy-subrc.
--No Such Interface--
when 1.
perform write_log_entry
tables t_ldata
using 'E' 'ZINT_INBOUND_POLLING' <function>
'Interface does not exist in ZINT_ADMIN.'
p_nowar space.
--Invalid Parameter Set----
when 2.
perform write_log_entry
tables t_ldata
using 'E' 'ZINT_INBOUND_POLLING' <function>
'Invalid parameter set for interface. Check ZINT_PARAM'
p_nowar space.
--Data Table Empty--
when 3.
perform write_log_entry
tables t_ldata
using 'E' 'ZINT_INBOUND_POLLING' <function>
'No inbound data. Check directory as per ZINT_ADMIN'
p_nowar space.
--Invalid IDOC group--
when 4.
perform write_log_entry
tables t_ldata
using 'E' 'ZINT_INBOUND_POLLING' <function>
'Invalid IDOC group. Check ZINT_ADMIN.'
p_nowar space.
--Others--
when others.
endcase.
Now store messages not related to a specific key
loop at t_ldata into s_ldata where key_val = space.
move s_ldata-messg to tbl_messages-line.
append tbl_messages.
endloop.
refresh t_ldata.
If data for last date had errors, then stop processing further dates
clear l_last_status.
select status from zint_data into l_last_status
where zint_id = p_intid
and zint_ty = p_intty
and key_val = t_zint_data-key_val.
endselect.
if l_last_status = 'ERR'.
concatenate 'Processing Halted - Errors for Date' l_date
into l_message separated by space.
message s999(b1) with 'ZINT_INBOUND_POLLING' <function>
l_message.
exit.
endif.
endat.
endloop.
endform. "process_data
*& Form set_screen_texts
Assign values to the selection screen titles.
form set_screen_texts .
t_mode = 'Run Mode'. " RJS
endform. " set_screen_texts
RJS Start >>>
*& Form write_data
Save the Inbound data to table ZINT_DATA, for later processing
-->PT_IDATA text
-->PV_ID text
-->PV_TY text
-->PV_FM
-->PV_IB
form write_data tables pt_idata structure zint_idata
using pv_id
pv_ty
pv_fm
pv_ib.
data: l_key_val like zint_data-key_val,
l_seq like zint_data-sequence,
l_created_on like zint_data-created_on,
l_counter type i.
data: lt_zint_data type standard table of zint_data with header line.
get time.
clear l_created_on.
refresh lt_zint_data.
loop at pt_idata.
clear lt_zint_data.
lt_zint_data-zint_id = pv_id.
lt_zint_data-zint_ty = pv_ty.
lt_zint_data-status = 'NEW'.
Derive both the "Key" value (KEY_VAL) and the
"Command Data Date" value (CREATED_ON) to store on the Data table
case pv_fm.
when 'ZINT_INBOUND_INTERFACE_CSSORDR'.
if pt_idata-zint_re(2) = '01'.
perform get_command_order_key using pt_idata-zint_re
l_key_val
l_created_on.
endif.
when 'ZINT_INBOUND_INTERFACE_CSTPORD'.
if pt_idata-zint_re(2) = '01'.
perform get_prod_order_key using pt_idata-zint_re
l_key_val
l_created_on.
endif.
when 'ZINT_INBOUND_INTERFACE_CSTGISS'.
perform get_sales_order_key using pt_idata-zint_re
l_key_val.
endcase.
lt_zint_data-created_on = l_created_on.
lt_zint_data-key_val = l_key_val.
lt_zint_data-length = strlen( pt_idata-zint_re ).
lt_zint_data-raw_data = pt_idata-zint_re.
append lt_zint_data.
endloop.
Setup the sequence number for each key value
loop at lt_zint_data.
at new key_val.
clear l_seq.
endat.
add 1 to l_seq.
lt_zint_data-sequence = l_seq.
modify lt_zint_data.
endloop.
Check for existing data with this same key
clear l_counter.
select count(*) from zint_data into l_counter
for all entries in lt_zint_data
where zint_id = lt_zint_data-zint_id
and zint_ty = lt_zint_data-zint_ty
and created_on = lt_zint_data-created_on
and key_val = lt_zint_data-key_val
and sequence = lt_zint_data-sequence.
Found duplicate data?
if l_counter > 0.
Yes: so remove these records from the input table
loop at lt_zint_data.
clear l_counter.
select count(*) from zint_data into l_counter
where zint_id = lt_zint_data-zint_id
and zint_ty = lt_zint_data-zint_ty
and created_on = lt_zint_data-created_on
and key_val = lt_zint_data-key_val
and sequence = lt_zint_data-sequence.
if l_counter > 0.
delete lt_zint_data.
endif.
endloop.
message i999(b1) with 'Data already exists in SAP! Directory:' pv_ib
'Key:' lt_zint_data-key_val.
endif.
Now save whatever is not a duplicate
loop at lt_zint_data.
Store new data records
insert zint_data from lt_zint_data.
and Store totals for reporting
tbl_totals-zint_id = lt_zint_data-zint_id.
tbl_totals-zint_ty = lt_zint_data-zint_ty.
tbl_totals-created_on = lt_zint_data-created_on.
tbl_totals-count = 1.
collect tbl_totals.
endloop.
endform. "write_data
*& Form get_command_order_key
Extract Command Order from raw data
-->L_LINE text
-->L_KEY text
form get_command_order_key using l_line l_key l_date.
data: l_orddate type d,
l_order(12) type n,
l_data(3000) type c,
l_shortorder(5) type n.
l_data = l_line.
perform extract_field(saplzint_csord)
using l_data
changing l_data
l_orddate.
perform extract_field(saplzint_csord)
using l_data
changing l_data
l_order.
l_shortorder = l_order.
if l_order le 9999.
concatenate l_orddate+2(6) '-'
l_shortorder
into l_key.
else.
concatenate l_orddate+2(6)
l_shortorder
into l_key.
endif.
l_date = l_orddate.
endform. "get_command_order_key
*& Form get_prod_order_key
Extract Commant Ticket number from raw data
-->L_LINE text
-->L_KEY text
form get_prod_order_key using l_line l_key l_date.
data: l_ticketdate type d,
l_data(3000) type c,
l_ticket(10) type n.
l_data = l_line.
perform extract_field(saplzint_cstik)
using l_data
changing l_data
l_ticketdate.
perform extract_field(saplzint_cstik)
using l_data
changing l_data
l_ticket.
l_key = l_ticket.
l_date = l_ticketdate.
endform. "get_prod_order_key
*& Form get_sales_order_key
text
-->L_LINE text
-->L_KEY text
form get_sales_order_key using l_line l_key.
l_key = l_line(10).
endform. "get_sales_order_key
*& Form read_data
Read data from custom table
-->PT_ZINT_DATA text
-->P_STATUS text
form read_data tables pt_zint_data structure zint_data
changing p_rtcod.
data: lt_zint_data type standard table of zint_data with header line.
data: l_found_rec(1) type c.
clear p_rtcod.
refresh: pt_zint_data, lt_zint_data.
Read stored data in date/time order
select * from zint_data into table lt_zint_data
where zint_id = p_intid
and zint_ty = p_intty
and status in ('ERR','NEW')
and created_on in s_datum
order by created_on key_val sequence.
Always ensure any existing Error records are re-processed first.
loop at lt_zint_data where status = 'ERR'.
move lt_zint_data to pt_zint_data.
append pt_zint_data.
Store totals for reporting
tbl_totals-zint_id = p_intid.
tbl_totals-zint_ty = p_intty.
tbl_totals-created_on = lt_zint_data-created_on.
tbl_totals-count = 1.
collect tbl_totals.
endloop.
Loop through the NEW records - add to list if no other errors
loop at lt_zint_data where status = 'NEW'.
l_found_rec = 'N'.
loop at pt_zint_data where status = 'ERR'
and created_on <> lt_zint_data-created_on.
l_found_rec = 'Y'.
exit.
endloop.
Found no errors for another date - so add NEW data
if l_found_rec = 'N'.
move lt_zint_data to pt_zint_data.
append pt_zint_data.
Store totals for reporting
tbl_totals-zint_id = p_intid.
tbl_totals-zint_ty = p_intty.
tbl_totals-created_on = lt_zint_data-created_on.
tbl_totals-count = 1.
collect tbl_totals.
endif.
endloop.
endform. "read_data
UNDER THIS THERE IS BELOW PROGRAM
*& Include ZINT_CSTPORD_ROUTINES *
Report: ZINT_CSTPORD_ROUTINES
Description: REDDIES Interfaces: COMMAND-SAP Interface Forms (Tickets)
Routines fpr the COMMAND-SAP production order interface. Note: some
of the code in this file has been directly copied from the original
interface (ZPPU_COMMAND_PRODUCTION, Jason Moore, Extend). This has
been done for two reasons: (1) the code works and (2) to save time.
Change History:
Date User Request Description
13/02/2006 EDWG WG1K902600 Original program.
*& Form process_inbound_data
Create prod. orders from ticket data extracted from the COMMAND
system. Note that large portions of the code in this routine
have been copied from the retired ZPPU_COMMAND_PRODUCTION
interface program. This was done (1) because the old code works
and (2) to save development time.
-->T_ZINT_IDATA Internal table of interface data
-->T_ZINT_PARAM Internal table of interface parameters
-->T_ZINT_MSLOG Internal table of messages
-->P_ZINT_ID Interface ID
-->P_ZINT_TY Inteface type
-->P_ZINT_IS IDOC group for interface
-->P_ZINT_DL Flag: delete IDOC group when complete
-->P_ZINT_AL Flag: run in standalone mode
-->P_ZINT_NW Flag: do not log warning messages
-->P_ZINT_SQ Interface sequence number
<--P_ZINT_RC Return code (<>0=>error)
form process_inbound_data tables t_zint_idata structure zint_idata
t_zint_param structure zint_param
t_zint_mslog structure zint_mslog
using p_zint_id type zint_id
p_zint_ty type zint_ty
p_zint_is type zint_is
p_zint_dl type zint_dl
p_zint_al type zint_al
p_zint_nw type zint_nw
p_zint_sq type zint_sq
changing p_zint_rc type zint_rc.
data: lva_partner(10) type n,
lva_cmdord(12) type n,
lva_prodmat(18) type n,
lva_filemat(18) type n,
lva_prodord(12) type n,
lwa_file type ty_file,
lva_type(2) type c,
lva_satsur type c,
lva_mincart type c,
lva_text(200) type c,
lva_counter type i,
bblines type i,
lva_shortorder(5) type n,
lva_loggr like marc-loggr,
lva_saleord like vbkd-vbeln,
lva_linkindex like sy-tabix,
lva_xabln like likp-xabln,
lva_vbeln like likp-vbeln,
l_vbfa like vbfa,
lva_igmng like caufv-igmng,
lva_gamng like caufv-gamng,
lva_qdiff like caufv-gamng,
lva_ltxa1 like afru-ltxa1,
lva_aufnr like afru-aufnr,
lva_wemng like afpo-wemng,
lva_psmng like afpo-psmng,
lva_rsnum like resb-rsnum,
lva_rspos like resb-rspos,
lHi ,
Modify your code like this .
DATA: YEARS TYPE TFMATAGE,
MONTHS TYPE TFMATAGE.
*declare the variable as type Char
DATA: Y_NUM(4) TYPE c,
M_NUM(2) TYPE c.
IF NOT SOURCE_FIELDS-/BIC/ZDOB IS INITIAL.
CALL FUNCTION 'FIMA_DAYS_AND_MONTHS_AND_YEARS'
EXPORTING
I_DATE_FROM = SOURCE_FIELDS-/BIC/ZDOB
I_DATE_TO = SY-DATUM
I_FLG_SEPARATE = 'X'
IMPORTING
E_MONTHS = MONTHS
E_YEARS = YEARS.
Y_NUM = YEARS.
M_NUM = MONTHS.
CONCATENATE Y_NUM '.' M_NUM INTO RESULT.
This will solve your problem.
MM -
Standard code modification with enhacement points..
hi,
i need to modify a couple of my standard programs. I have been suggested to follow this approach.
first get the acces key and go to change mode. then where u want to insert ur code, click on the insert button and get the insert block. Then here I need to have an implicit point !! how do i create that ? where do i associate these enh points to an enhancement spot ??
also, the advantage stated is that tomorrow if i dont need this modifications, i can just simply switch off the enhancement spot ?? or point ?? i am not sure ? any details on that ?
another question is what happens when tomorrow sap changes this standard program. will my enhancement point/spot remian intact ?? what do i do to reapply my changed code as enh points ??
can anyone please throw some more light on all these ??
thks[Enhancement Framework>> |http://wiki.sdn.sap.com/wiki/x/cwXEB]
"another question is what happens when tomorrow sap changes this standard program"
SAP would use some logic, which will make sure they are not spoiling the enhancement points...
rettkomv = xkomv.
perform (^*&*&&*) using xkomv from saplv61a if found. "<< I can only remember this for now..
xkomv = rettkomv. -
SAP Standard Followup Action for Material Movement at the time of UD.
Does anyone know if SAP offers a standard Followup Action that once completing the Automatic Usage Decision, it will perform a Material to Material movement at the same time.
Exampe: I have two Materials with different Inspection types and Inspection Plans that will get processed and made into CP14.
1) CP14H - Incomimg Inspection Type Z01
2) CP14.B1 - Inprocess Inspection Type Z04
Both materials get assigned to the correct plan. They are then tested for required characteristics. If all are in Spec, an auto Batch Job complete the UD. At the same time I want to do a Material to Material movement to CP14 Unrestricted Stock for both inspection lot types. Right now to do the Material to Material movement I have to complet a MIGO transaction manually.Look at FM QM06_FM_TASK_GOODS_MOVEMENT.
It is a standard function module that is used in the action boxes in a quality notification to perform a goods movement. It is meant to be interactive with the user so it won't work as is, as a follow-up action to a UD. But you might be able to have your programmers copy this FM and use it as a basis to create your own custom code for your follow-up action. It might save you some time.
FF -
SAP Standard screen modification and logic
Hi All,
I have four tab strips in my standard selection screen. in the second , third and fourth tabs i need to add same fileds
for exampls
surgery tab
optable procudere code procudure category (standard functionality)
opttable2 procudure code2 procudure category2(custom to be added)
opttable 3 procudure code3 procudure category3(custom to be added)
medical dat tab
diagnosis code(standard)
diagnosis code2(custom to be added)
diagnosis code3(custom to be added)
The standard program uses one structure (RNEBILL) in the structure i have added APPEND STRUCTURE(ZPPAND1)
in the structure i created all the fields.
could you tell us how to proceed futher development logic.
Regards
subbaraHi Subba,
Still it appears hazy to me. But if i have understood it correctly, this is how it looks like:
Your mentioning of a Standard SAP Form with four Tabs gives me a hint that it could be any Marketing Document Form (For eg. Sales Documents or Purchase Documents). Then you mention that you are not adding any User Fields to the first Tab (The first tab in any Marketing Document is the Contents tab). Again, you mentioned that you have added 3 user defined fields in your second tab which is the Logistics tab and then your requirement, you want this to manged by the SAP Form just like any other standard field on the Form.
If this is what i have understood then the solution is simple. You just need to databind your custom field to the user defined field that you have created in the database. SAP Business One will process these custom fields just like any standard field.
Thanks and HTH,
BR,
Siju Dasan -
SAP Standard ABAP Proxy for PO 855 SRM-R/3
Hi :
855 PO Confirmation in R/3 from SRM
Can I use the ABAP Proxy "PurchaseOrderConfirmation_In" to Confirm the PO response in SRM from R/3
( In R/3 i get a idoc formatted file as 855 from vendor and can do PO Confirmation uisng custom program in R/3).
PurchaseOrderConfirmation_In is standard abap proxy out of the sap box for the SRM-SUS integration.Sender Interface is PurchaseOrderConfirmation_Out(SUS) and receiver Interface is PurchaseOrderConfirmation_In(SRM) for the PO Confirmation for SUS-SRM scenario.
The 855 file from vendor is in the form of IDOC structure and how to customize the file to be used in conjunction with PurchaseOrderConfirmation_In(as this is based on XML).
How to Convert the 855 IDoc to XML format and feed it to standard SAP Interface PurchaseOrderConfirmation_In via XI ,if yes will this work and how??
Thanks in advance..Hi Srivatsan,
How are you? Hope you remember me..We got a similar kind of requirement in our project. Do you have solution for this issue?
regards
Paris -
SAP Standard: Search aid for suppliers account group
Hello together,
if you are searching for a customer in XD03 (e.g.) - you have a register to search for the customer account group.
If you want to search the same way in XK03 - there isn't this search aid.
Is this a bug, or do we have to create manually a new search aid.
Thanks for your help in advance.
Regards
HeikoI can confirm you are correct.
It does not exist as standard.
Please use t code OB50 to create a new search term. -
SAP Standard report/Tcode for Retest date of Materials
Hi,
Is there any Standard report or T.code for finding the retest date of materials laying in the storage locations.
Thanks in advance.
GanapathiHi Krishnan
Thanking you for your interesting to answer my question.
As my sceniro is not shelf life, i required retest date (recurring inspection date) of materials laying in the storage locations. for better clarity i am describing my sceniro. In MM01- Quality Management- Inspection interval - 365 days entered for all ROH type materials. Now how can i see the materials retest date laying ( Only Stock batches) in the storage location.
Thanking You,
Regards,
Ganapathi -
SAp standard Activity profile for shipment.
Hi Expert,
I am working on transortation module.
WE have requirmrnt that in shipment creation measn vt01n transaction when user will tick the shipment status that is shipment start,shipment loading......etc. automatic PGI happend or automatic billing document created in background.
for this as per my knowledge SAP activity profile is the solution but no idea.
Can someone help me & help me to clear my view.
Thanks in Advance.
DevHi
Thanks for your reply.
I know the path , but I want what is activity profile?
Which activity profile have to use for PGI & which for Billing document.?
Please suggest or send me any document which provide me a complete set of information.
Thanks & reply ASAP.
Dev
Maybe you are looking for
-
HELP PLEASE MY ITUNES WONT OPEN
IVE DONE EVERYTHING IVE DOWNLOADED QUICKTIME N ITUNES TOGHTHER PLZ I NEED HELPPPPPP THX
-
No javaw in jrockit-jdk1.6.0_33-R28.2.4-4.1.0
Hi i am trying to use the jrockit jvm for my eclipse. The documentations tells me that i have to point to javaw as the jvm in the eclipse.ini file. I have installed jrockit-jdk1.6.0_33-R28.2.4-4.1.0 and jrockit-jdk1.6.0_37-R28.2.5-4.1.0 on my oracle
-
Hi i'm trying to code using JAVA of course, a graph G(V, E) V= set of shared queries and E= set of Edges, and a priority queue please if you know how to do it tell i'm waiting thanks in advance [email protected]
-
hi, i have problem deploying the target module created in OWB 10g release 1. I have created the location and its connector but in the database location for that connector it does not show its own location name. so what does it exactly mean. how do we
-
Hi, I am adding new validation into a standard form using the WHEN-VALIDATE-RECORD event trigger. During testing, when navigating different field on the form, I encountered some error message like below. But the event triggers mentioned in the error