How to Migrate Service Contracts in MM
Dear Friends,
I need to migrate the service contracts in MM.
Cany anybody suggest the procedure or any hint?
Thanks in advance.
Hi
select the particular line
Tool- bar- edit - delete
Then save.
Regards,
Raman
Similar Messages
-
How to map service contract data from ecc to crm
Hi Experts,
Please help me,how to map service contract data from ecc to crm system.
is there any perticular process.please let me know.
thanks in advance..Hi Srinivasulu,
Create the service contract type of ECC and also item categories under it in ECC in CRM. Map the number ranges.
Check the Partners mapping from R/3 to CRM and that will be all.
I tried but in CRM in the transaction type internal number range is mandatory. So, if you create service contract in ECC with one number it will replicate to CRM but with different number. But you can see ECC number under the transaction history in CRM.
Good Luck.
Sharath. -
How to creating Service Contract using BAPI_SLSTRANSACT_CREATEMULTI
Hi,
In my requirement, I have to create a Service Contract from flat file by using BAPI - BAPI_SLSTRANSACT_CREATEMULTI and data which are comming from flat files are, Serial number, Sold-to party, Ship-to party, Installation date, Contract start date, Contract end date, Service profile, Response profile.
Please suggest me what are the Import parameters should I pass in this BAPI to create Service Contract?
Thanks in Advance,
DeepeshHi All,
for everybody's benefit (and to avoid you the time I've spent to work this out...), here is a working example on how to create an sales order (TA) via the BAPI_SLSTRANSACT_CREATEMULTI.
Not really a Service Contract, but it tells you how to call the BAPI.
Points appreciated, if you find this helpful...
I use the convention entryField for the values that should be set based on your system.
Cheers
G
*& Report ZZGVBAPISALESORDER
REPORT ZZGVBAPISALESORDER.
include constants
include crm_direct.
// GUIDs
data: lv_guid_h type GUID_32,
lv_guid_i type GUID_32,
lv_guid_sl type GUID_32,
lv_guid_p type GUID_32.
// Handles
data: lv_current_handle type crmt_handle,
lv_handle_h type crmt_handle,
lv_handle_i type crmt_handle,
lv_handle_sl type crmt_handle,
lv_handle_p type crmt_handle.
// Administration header + item + etc
data: lt_salesorder_header type table of bapibus20001_header_ins,
ls_salesorder_header type bapibus20001_header_ins,
lt_salesorder_item type table of bapibus20001_item,
ls_salesorder_item type bapibus20001_item,
lt_scheduleline type table of BAPIBUS20001_SCHEDLIN,
ls_scheduleline type BAPIBUS20001_SCHEDLIN,
lt_partner type table of BAPIBUS20001_PARTNER_INS,
ls_partner type BAPIBUS20001_PARTNER_INS,
ls_logical_key TYPE crmt_partner_logic_partner_key,
lt_organisation type table of BAPIBUS20001_ORGMAN_INS,
ls_organisation type BAPIBUS20001_ORGMAN_INS.
// Saved sales orders
data: lt_saved_process type table of bapibus20001_object_id,
ls_saved_process type bapibus20001_object_id,
ls_salesorder type CRMT_RETURN_OBJECTS_STRUC.
data: lt_input_fields type table of bapibus20001_input_fields,
ls_input_fields type bapibus20001_input_fields,
lt_return type table of bapiret2,
ls_return type bapiret2.
// Macro definition to populate structure and input field
This, called as
setfield ls_salesorder_header GUID lv_guid_h
is exploded as
ls_salesorder_header-GUID = lv_guid_h.
ls_input_fields-fieldname = 'GUID'.
append ls_input_fields to lt_input_fields.
Note 1: &2 (field name) MUST be uppercase
Note 2: for the salesorder header, I haven't used the macro,
to show how the code should look.
I've used the macro everywhere else.
define setfield.
&1-&2 = &3.
ls_input_fields-fieldname = '&2'.
append ls_input_fields to lt_input_fields.
end-of-definition.
// end of macro definition
// fill order administration header
perform get_guid changing lv_guid_h.
add 1 to lv_handle_h.
ls_salesorder_header-guid = lv_guid_h.
ls_salesorder_header-handle = lv_handle_h.
ls_salesorder_header-process_type = 'TA'.
clear ls_input_fields.
ls_input_fields-ref_handle = lv_handle_h.
ls_input_fields-ref_guid = lv_guid_h.
*ls_input_fields-ref_kind = gc_object_ref_kind-orderadm_h.
ls_input_fields-objectname = gc_object_name-orderadm_h.
ls_input_fields-fieldname = 'GUID'.
append ls_input_fields to lt_input_fields.
ls_input_fields-fieldname = 'HANDLE'.
append ls_input_fields to lt_input_fields.
ls_input_fields-fieldname = 'PROCESS_TYPE'.
append ls_input_fields to lt_input_fields.
append ls_salesorder_header to lt_salesorder_header.
// fill organisation data (I needed this, you may rely on
sales org determination instead...)
clear ls_input_fields.
ls_input_fields-ref_handle = lv_handle_h.
ls_input_fields-ref_guid = lv_guid_h.
ls_input_fields-ref_kind = gc_object_ref_kind-orderadm_h.
ls_input_fields-objectname = gc_object_name-orgman.
setfield ls_organisation REF_GUID lv_guid_h.
setfield ls_organisation REF_HANDLE lv_handle_h.
setfield ls_organisation REF_KIND gc_object_ref_kind-orderadm_h.
setfield ls_organisation SALES_ORG_RESP salesOrgResp(input).
setfield ls_organisation SALES_ORG salesOrg(input).
setfield ls_organisation DIS_CHANNEL disChannel(input).
append ls_organisation to lt_organisation.
// fill order administration item
perform get_guid changing lv_guid_i.
lv_handle_i = lv_handle_h.
add 1 to lv_handle_i.
clear ls_input_fields.
ls_input_fields-ref_guid = lv_guid_i.
ls_input_fields-ref_handle = lv_handle_i.
*ls_input_fields-ref_kind = gc_object_ref_kind-orderadm_i.
ls_input_fields-objectname = gc_object_name-orderadm_i.
setfield ls_salesorder_item GUID lv_guid_i.
setfield ls_salesorder_item HEADER lv_guid_h.
setfield ls_salesorder_item HANDLE lv_handle_i.
setfield ls_salesorder_item HEADER_HANDLE lv_handle_h.
setfield ls_salesorder_item ORDERED_PROD product(input).
*_set_field ls_salesorder_item ITM_TYPE 'TAN'.
setfield ls_salesorder_item MODE 'A'.
*adjustment taken from standard include LCMS_MAPPERF04
*(see where-used-list for BAPI_SLSTRANSACT_CREATEMULTI, program LCMS_MAPPERU11)
delete lt_input_fields where fieldname = 'HANDLE'
OR
fieldname = 'HEADER_HANDLE'.
append ls_salesorder_item to lt_salesorder_item.
// fill schedule line for item
perform get_guid changing lv_guid_sl.
add 1 to lv_handle_sl.
clear ls_input_fields.
ls_input_fields-ref_guid = lv_guid_i.
ls_input_fields-ref_handle = lv_handle_i.
ls_input_fields-ref_kind = gc_object_ref_kind-orderadm_i.
ls_input_fields-objectname = gc_object_name-schedlin.
setfield ls_scheduleline ITEM_GUID lv_guid_i.
setfield ls_scheduleline GUID lv_guid_sl.
setfield ls_scheduleline HANDLE lv_handle_sl.
setfield ls_scheduleline ITEM_HANDLE lv_handle_i.
setfield ls_scheduleline QUANTITY '1.000'.
append ls_scheduleline to lt_scheduleline.
// fill partner line
*perform get_guid changing lv_guid_p.
*the partner use the logical key as well
ls_logical_key-ref_partner_handle = '0001'.
clear ls_input_fields.
ls_input_fields-ref_guid = lv_guid_h.
ls_input_fields-ref_handle = lv_handle_h.
ls_input_fields-ref_kind = gc_object_ref_kind-orderadm_h.
ls_input_fields-objectname = gc_object_name-partner.
ls_input_fields-logical_key = ls_logical_key.
setfield ls_partner REF_GUID lv_guid_h.
setfield ls_partner REF_HANDLE lv_handle_h.
setfield ls_partner REF_KIND gc_object_ref_kind-orderadm_h.
setfield ls_partner REF_PARTNER_HANDLE '0001'.
setfield ls_partner KIND_OF_ENTRY 'C'.
setfield ls_partner PARTNER_FCT '00000001'.
setfield ls_partner PARTNER_NO bpNumber(input).
setfield ls_partner NO_TYPE 'BP'.
setfield ls_partner DISPLAY_TYPE 'BP'.
move-corresponding ls_partner to ls_logical_key.
append ls_partner to lt_partner.
// example of a second partner function (custom) with data
override
ls_logical_key-ref_partner_handle = '0002'.
clear ls_input_fields.
ls_input_fields-ref_guid = lv_guid_h.
ls_input_fields-ref_handle = lv_handle_h.
ls_input_fields-ref_kind = gc_object_ref_kind-orderadm_h.
ls_input_fields-objectname = gc_object_name-partner.
ls_input_fields-logical_key = ls_logical_key.
setfield ls_partner REF_GUID lv_guid_h.
setfield ls_partner REF_HANDLE lv_handle_h.
setfield ls_partner REF_KIND gc_object_ref_kind-orderadm_h.
setfield ls_partner REF_PARTNER_HANDLE '0002'.
setfield ls_partner KIND_OF_ENTRY 'B'. "manual entry...
setfield ls_partner PARTNER_FCT customFct(input).
setfield ls_partner PARTNER_NO bpNumber(input).
setfield ls_partner NO_TYPE 'BP'.
setfield ls_partner DISPLAY_TYPE 'BP'.
setfield ls_partner TITLE 'Mr.'.
setfield ls_partner FIRSTNAME 'John'.
setfield ls_partner LASTNAME 'Smith'.
setfield ls_partner STR_SUPPL1 'John Smith and Co'.
setfield ls_partner STREET 'Street1'.
setfield ls_partner STR_SUPPL3 'Street4'.
setfield ls_partner HOUSE_NO '42'.
setfield ls_partner CITY 'Townville'.
setfield ls_partner DISTRICT 'Districtshire'.
setfield ls_partner POSTL_COD1 'AA1 2BB'.
note now ...
*adjustment taken from standard include LCMS_MAPPERF04
*(see where-used-list for BAPI_SLSTRANSACT_CREATEMULTI, program LCMS_MAPPERU11)
I don't use macro because name of the field in input_table is different
*_set_field ls_partner COUNTRYISO 'GB'.
*instead
ls_partner-COUNTRYISO = 'GB'.
ls_input_fields-fieldname = 'COUNTRY'.
append ls_input_fields to lt_input_fields.
*_set_field ls_partner LANGU_ISO 'EN'.
ls_partner-LANGU_ISO = 'EN'.
ls_input_fields-fieldname = 'LANGU'.
append ls_input_fields to lt_input_fields.
move-corresponding ls_partner to ls_logical_key.
append ls_partner to lt_partner.
Create sales orders *
call function 'BAPI_SLSTRANSACT_CREATEMULTI'
EXPORTING
testrun = false
TABLES
header = lt_salesorder_header[]
item = lt_salesorder_item[]
partner = lt_partner[]
organisation = lt_organisation[]
input_fields = lt_input_fields[]
scheduleline = lt_scheduleline[]
saved_process = lt_saved_process[]
return = lt_return[].
// get the GUID of the created object
call function 'BAPI_TRANSACTION_COMMIT'
EXPORTING
wait = 'X'.
INCLUDE ZZGVBAPISALESORDER_GET_GUIDF01.
The include contains only this:
***INCLUDE ZZGVBAPISALESORDER_GET_GUIDF01 .
*& Form get_guid
text
<--guid text
FORM get_guid CHANGING GUID.
CALL FUNCTION 'SYSTEM_UUID_C_CREATE'
IMPORTING
UUID = GUID.
ENDFORM. " get_guid -
How to create Service Contract-Urgent
Hii All,
Can anyone tell me what all the requirements needed to create a service contract?
I shall be thankful to anyone who could please please send me the step by step procedure to create the service contract.
Thanks
Gopi.Hi Gopal ,
Use following steps for creating service contract.
1] Use t-code <b>ME31K</b>
2] Enter details like Vendor , Agreement type (MK) , Purch Orgn Purch.group.In the same , enter Item Category as "<b>D</b>" and respective account assignment category (K,F etc.)
3]In second screen enter Validity period , then short text for the desired services.In next screen , enter Service details and proper account assnmnt
Save the contract
Regards
Nilesh -
How to migrate services from old server before shutting down
We have six servers at my workplace, and we're looking to retire one server.
I need to migrate all services from the old server before we can fully turn it off. How would I go about doing that ?
Can't get access into the old server, but I believe it's a Windows Server 2012/2008
The new server is Windows Server 2012.
Need to migrate everything from the old serverI can't get access into the old server, but I believe it's a Windows Server 2012/2008
The new server is Windows Server 2012.
Need to migrate everything from the old server.
Hello,
without administrative access you can not migrate anything. So find the administrator that is responsible for the server and talk to him first.
Best regards
Meinolf Weber
MVP, MCP, MCTS
Microsoft MVP - Directory Services
My Blog: http://blogs.msmvps.com/MWeber
Disclaimer: This posting is provided AS IS with no warranties or guarantees and confers no rights.
Twitter: -
How to update Service Contract using BAPI/FM for ME31K
Hi ,
I am using BAPI BAPI_CONTRACT_CREATE to create contracts.
It works fine, the only problem i am facing is while updating line item with item category "D' its simply skips the item category and create a item. The item category is blank when i see in transaction ME33K.
When i create it using ME31K transaction with line item item category type "D' its ask me to fill the services also for that line item.
My question is is there any BAPI which i can use to update the Services for item line with item category D.
Thanks
AmarHi Amar,
Not sure if this would help you but you can consider writing different logic (probably a BDC) for item category 'D', and use BAPI for all other cases (if 'D' is the only exception).
BAPI documentaion says:
*External services (planned and unplanned services) are not supported.
Creation of configurations is not supported*
Regards,
Shyam -
How to change Service Contract item status to I1401(Terminateddue to Produc
Hi,
This is a ISU-CRM intergration scenerio. In certain case of contract renewal, I need to change status of existing item to I1401 (Terminated due to Product Change) and add new item with status I1400 (Started due to Product Change).
But when I try to change it using class:
call method cl_crm_isu_order_change=>set_single_status
exporting
iv_guid = l_new_itm_guid
iv_status = 'I1400'
receiving
ev_success = l_success
then, success flag is always false and no exception is raised. Please help what am I doing wrong?
Regards,
DamanIt worked after a commit.
-
Partner in service contract and ibase
Here is a data migration scenario, migration service contract from legance to crm:
1. warranty data and sold to partner will be migrated to ibase in crm
2. legancy contract will be migrated to crm contract, which also contains a sold to party
So my question is whether there is a dependency about sold-to party between service contract and ibase,
- for example., here is ibase contain product: A,B,C, but when create a contract for product D, which does not exist in a ibase, so whether this contract can be create, whether it can look up the if product exist in ibase according to sold to party,
And whether it can prevent to create new contract for D?
Many thanks.Hi Nagaraju,
First of all, you can bill Service Contract and Service Order differently. This is because you may wish to charge contract fees irrespective of whether service occurs or not.
Secondly, while maintaining DIP profile, you can use different material from the one used in contract. Just make sure that it gives explanation as to what service was performed so that customer will understand the invoice.
DP90 will generate Debit memo request. You will need to create billing document against this using VF01.
When you settle the service order (KO88), it will be settled against service contract.
Please let me know if you need any further information.
Regards,
Aaditya. -
CRM- Find Service contract from Internal Order Number
Hi Friends,
I would like to know how to get service contract from internal oredr number.
From service contract we can find internal order number by using CRM_ORDER_READ function module- table et_document_flow, but my requirement is how to find service contract from Internal order number.Any function module or BAPI available for this requierement ?
Regards
Vinayak SapkalHi,
when the costs are transferred from CRM to R3, they are posted to an internal order. When a service order or incident is transferred to R3, we have to create an internal order for it, regardless of whether or not a contract has been assigned.
This is all linked to the logic used in CO to find the appropriate internal order. It works as follows:
The internal order is stored in the table IAOM_ASSIGNMENTS. This is accessed by a guid (the account assignment guid).
To get this guid, there is a second table IAOM_EXT_OBJ_INF. This table links the GUIDs coming from CRM, dependent on the CO Customizing for CRM (Mass Controlling, Header level, item level controlling etc.)
This is how we manage to link a service order to the internal order of a contract in the first place.
When we call CO, CO first looks for an assignment for the object guid passed. If a service order has been linked to a contract, nothing will be found for the object guid. CO will then check for assignments to the reference guid and find the contract entry.
If no contract has been assigned, CO will create an internal order based on the service order guid.
From a CRM point of view, costs are assigned directly to an item, and so it makes no sense to have a reference guid for the costs or the possibility to change the guid via BADI.
regards
Waman -
Migrating Services From External ITS to Internal ITS
Hi All,
We are migrating from External ITS 2.0 (SAP R/3 4.6B) to Internal ITS 6.0 (SAP ECC 6). Can anyone tell me on how to migrate services which are there in External ITS to Internal ITS, so that the same External ITS services are visible in SICF or SE80 Transaction.
Thanks and Regards In Advance,
Sidhartha ChatterjeeHi Sidhartha,
As Klaus recommend, you should start with help.sap.com.
I would also suggest doing a search in this forum, for similar threads like your. There are many of them, with good links and tips.
I think a very good practical start to understanding the internal ITS is to read Durairaj Raja's excellent webblog, "Running your first ITS WebGUI application in SAP Netweaver 04 ABAP Edition", /people/durairaj.athavanraja/blog/2005/08/21/running-your-first-its-webgui-application-in-sap-netweaver-04-abap-edition--nsp
regards,
Jørgen -
Renewal of Service Contract?
Dear all!
i want to know how can a service contract be renewed? the system is giving a automatic alert when the end date nears. but how to renew it?
again even if i am extending the enddate of tht service contract, how to keep track that 'How many contracts been renewed?'
Thanks in advance,
Shiva.
Edited by: Darius Heydarian on Mar 10, 2008 1:32 PMHi Shiva,
As such the system cannot show you how many times the contract was renewed. It can only show you that the renewal date is approaching and you need to renew it. There is a specific reason behind the fact that the sytem need not renew the contract automatically. The system does not know whether a particular contract needs to be renewed or not. This has to be manually informed to the system.By not making the renewal automatic the ystem is actually giving you the flexibility that you can either close the contract or renew it.
Now if you want to know how many times a particular contract was renewed then you will have to do it thru queries only because no regular report is available.
Nagesh -
How to reject Line Items in a Service Contract?
Hello friends,
Can anyone help me understand how do we reject items in a Service Contract? I don't see any Reject field. Is it one of the Status I need to configure for Item Level Status Profile? Even if I add a 'Reject' status, how do I link it to Rejection Reason codes? (I know how to add Reason codes in customizing, but how they are linked to a Transaction type is something I am not finding...).
Please provide any inputs.
Thanks.HI Navaneethan,
please try following code.
make PEKKO should be internal table with appropraite structure..
Loop at ZBTXT.
MOVE ZBTXT-LINE TO PEKKO-ZBTXT.
append PEKKO.
clear PEKKO.
ENDLOOP.
loop at pekko.
write : / PEKKO-zbtxt.
endloop.
if above code is helpful, REWARD POINTS.
Regards,
Ranjith -
How to know an order number from the service contracts table
Hi all,
I want to know how the order entry module and service contracts module are connected. I mean to ask if a service is placed as an order for purchase how do i get the information about the order_id or order_number from the service contracts table.
please point me in a direction so as to which tables i should be lookling at.
Thanks.Try OKC_K_REL_OBJS table. The column JTOT_OBJECT1_CODE contains values 'OKX_ORDERHEADER' or 'OKX_ORDERLINE' and the column RTY_CODE = 'CONTRACTSERVICEORDER'. The column OBJECT1_ID1 should store order HEADER_ID or LINE_ID based on JTOT_OBJECT1_CODE value. Hope this helps.
-
How to link Sales Order with Service Contract and then with Install Base?
Hi Friends,
1) I would like to know the integeration process from sales order to Service Contract and then with Install Base.
2) I couldn't see anything enabled in Service Tab in Order Lines, its grayed out. Is there any set up/profile option to get it enabled?
3) How can we create AR invoice from Service Contract?
Please let me know if anyone has idea on this.
Thanks in Adavance,
VaraDear Sid,
Thanks for your promt response.
Let me explain you what I did.
1) I have booked a Bill Only sales order which has one order line, mentioned it as Service Item and provided the same details in Service Tab in Order lines. Now Line status is "Fulfilled"
2) Then Submitted Workflow Back Ground Process for OM Order Lines and it has created an AR Invoice and closed the line
3) And then submitted "Service Contracts Order Capture Integration Program" from SErvice Contracts Responsibility and it completed normal.
4) Now I went in to Launch Contracts Window and queried with the sales order but couldn't see any contract created
5) Then I went in to Reprocess Order Window and found this order shows an error message as "Referenced Product not present in the Installed Base", then I tried to reprocessed it, but the same error message again.
Here I have few doubts:
1) Are the AR invoice and Service Contract Billing Invoices same?
2) In above scenario AR Invoice has been created, I would like to do the billing from SErvice Contracts and need to create an Invoice in AR? how can I do that?
because as you explained in one of my questions earlier, A Single Invoice can be created for the whole duration of the contract. I want to do that and trying for the same.
3) Regarding the above error message, how can I resolve it and create the service contract against that Order?
Thank you so much for your helpful answers.
Regards,
Vara -
How do I "run" an ldt file for Service Contracts?
Ref. BugNo. 4450150
How do I “run” an .ldt file for Service Contracts?
Do I use FNDLOAD and if so is this the way to do it
FNDLOAD apps/apps_password 0 Y UPLOAD @FND:OKS_TOP/patch/115/import/US/okskfinv.ldt
ThanksSee Note:142483.1
Subject: How to Define the ORACLE_SERVICE_ITEM_FLEXFIELD
Maybe you are looking for
-
Is there a way to rotate canvas in FCP?
I've been told there is now way to rotate the cavas window 90 degrees. I'm assuming that is true. Anyone, have a solution. I'm editing 9x16 and I've been just turning my monitor on it's side. I'd like another way. I might not get it. Any suggestions?
-
How to construct menus in tiles ==Urgent
Hi, can somebody throw me some idea how to constuct menus in tiles or some good book which explains this. Thanks Chatfield
-
Custom Tcode Authorization Error
Dear Security Gurus, We are getting an authorization while testing Custom Tcode. This tcode is used for Uploading data. The authorization error shows missing Activity field value and a field called Operating Concern. The SU53 and the Trace(ST01) show
-
CRViewer crashes app when 2nd report is requested
I have an app developed in VB6 using Crystal Reports XI. Reports are viewed within the app using the CRViewer. Everything works fine on XP. My app works fine on Vista also, but the reports do not. The first time I view a report all is well, but when
-
ChaRM Action 'Transport into Sandbox System'
Hi, How the action 'Transport into Sandbox System' works. Wanted to know how this action works & in TMS do we need to map sandbox client. From sand