BAPI to set user status for PS
Hi,
I need to set the status as approved "E0002" from BAPI ( from workflow) for Project definition (BUS2001)
I got BAPI " BAPI_BUS2001_SET_STATUS" and gave import parameter for project definition but i couldnt able to give value for set_user_status as it takes only 4 char but my status(JEST) is 5 char (E0002).
Please help me how to use this bapi and what are all other bapi's i need to call to work correct.
Ashu
Use this FM I_CHANGE_STATUS for changing status.
CALL FUNCTION 'I_CHANGE_STATUS'
EXPORTING
OBJNR = v_objnr
ESTAT_INACTIVE = 'I0001'
ESTAT_ACTIVE = 'I0002'
Similar Messages
-
Hi All,
How can I set the user-status for a PP order, also let me know which user exit suits this requirement, as I know I have to make use of a FM or a BAPI which sets the user-status in the user-exit somewhere.
Thanks
MarkHi,
Try the following enhancements/exits for setting the status for PP order.
STATTEXT
CCOWB001
COIB0001
Regards,
Anji -
Need help on to set User status for Operations in Maintenance order
Hi experts,
i am new to PM module.
i need to do BDC for IW31. i want to know some inforamtion
on user status for each opertaion.
my problem is ,, what is user status.
why it is saying order is not yet released when saving and status can not set.
in this cases how can i do BDC.User status are something set in the configuration and specific to the company which SAP hasn't given in the system status.
May be in your system user status are configured to set only after the release of the order.
For doing the userstatus you may need to release the order, you can release the order thru bdc and then do bdc for user status. Also see below link
http://www.sap-img.com/plant/user-status-set-date-in-maintenance-order.htm -
Bapi to set user status of a task
Hi,
I am looking for a bapi or method to set the user status of a task.
We have created a status profile for user status and need to set the user status of the task in the dpr_attributes badi based on some conditions.
I tried bapi BAPI_BUS2175_SET_STATUS but it either says status profile not found or if i assign the status profile to the task it says status profile already active but never changes the user status.
I checked method SET_DATA_EXT of class CL_DPR_TASK_O but it does not have user status field for modifying whereas GET_DATA_EXT method has the user status but it wouldn't help to change the user status.
If anyone has any idea on this it will be extremely helpful.
Regards,
SimmiHello!
Please try the following code, it works for us (let's say the status profile is already active, otherwise you have to add the corresponding export parameter):
DATA: BUS TYPE BAPI_TS_BUSINESS_TRANSACTION,
RETURN TYPE STANDARD TABLE OF BAPIRET2,
BUS-BUSINESS_TRANSACTION = 'SET_USER_STATUS'.
BUS-USER_STATUS = your_user_status.
CALL FUNCTION 'BAPI_BUS2175_SET_STATUS'
EXPORTING
TASK_GUID = task_guid
IS_BUSINESS_TRANSACTION = BUS
TABLES
RETURN = RETURN.
If still not working, you can have a look to the following SAP Note: 954975
Matthias -
User exit to set user status for quote
Hi,
I need to update the user status in the header of quotation (using VA22) based on some conditions. I checked the user exit's under 'MV45AFZZ' but no use.
Could any one please provide me where I can write the code to put the conditions before upating user status in header
Thanks
Thang TranHi,
Is there anyone can give me some suggestions?
Thanks in advanced
Regards,
Thang -
BAPI/FM for setting the user status for the Project definition and WBS elem
Hi,
I have to set the User Status for the Project Definition and the WBS elements in that project.
The User status to be set is the same for the project and wbs elements.
Please let me know if there is any BAPI/FM to set the user status..
Thanks in advance.
Regards
ShivaHi Shkithija,
There is a dump encoutered in the form "PS_FLAG_GET_GLOBAL_FLAGS" for 'chk_precommit_ok' in the "BAPI_PS_PRECOMMIT".
But it is showing SY-SUBRC = 0 when used along with BAPI_TRANSACTION_COMMIT.
May i know what are input parameters we need to pass it to "BAPI_PS_PRECOMMIT".
Do you have any idea.
Please let me know
Regards
vishnu -
Set a User Status for Quality Notifications only if they are "Activated".
Hello experts:
I need to be able to set a User Status for Quality Notifications only if they are "Activated".
When defects are recorded for an inspection lot, a "Defect Notification" is created which can be activated to become a "Quality Notification". Initially, the only difference between the inactive "Defect Notification" and the active "Quality Notification" is that the system status DEFR is active for the "Defect Notification", but is cleared when the notification is activated.
So, I'm looking for the business process associated with the Activation to use as a trigger for my own user status.
I checked the business rules for status DEFR and found that the following processes clear this status
PMM1 - Postpone Notification
PMM2 - Put Notification In Process
PMM3 - Assign Order
PMM6 - Put Notification In Process Again
Any Ideas ?Perhaps some additional information would help you understand what I need to do.
For notification type F3, we are recording all defects found in production.
Most of these are expected defects that result in a minor reduction in yield.
For this type of defect, we do not activate the notification, and the inspection lot is closed automatically at the end of production.
However, sometimes defects are observed of an unexpected type or a higher than expected quantity.
When this happens we manually activate the notification and assign tasks to find and correct the cause.
It is only for these activated notifications that I want to automatically set a user status, which among other things, will prevent the notification from being closed until some other actions are complete and a different user status is selected.
The function of the user status currently works exactly as I want, but if it is set as the initial status for all F3 notifications, it is also preventing the un-activated defect notifications from automatically closing. I therefore want to use the Activation event as the trigger to set my user status. -
Any Pointers to set user status in iw31 and iw32
Hi all,
I am working on an enhancement where I need to set the user status for an order every time a new order is created(iw31) or an existing order is changed(iw32) and a material in that is flagged as a retirement unit material.
Is there any function module to do that?Hello Anu
I would like to point to the BAPI documentation where a useful BAdI (<b>IBAPI_ALM_ORD_MODIFY</b>) is mentioned:
FU BAPI_ALM_ORDER_MAINTAIN
Short Text
Process Maintenance-/Service Order
Functionality
This Business Application Programming Interface (BAPI) is used for
changing maintenance- or service orders and their lower-level objects.
The following objects of an order can be processed (for restrictions,
see the note at the end of the documentation):
o Order header
o Partner
o User status
o Order operations
o Relationships
o Components
o Long texts for order header, operations, and components
Function
Calling up this BAPI once allows you to perform all the operations. For
this the system supplies the function module with a method table
containing the methods to be performed. The entries in the method table
refer to data records in the optionally filled-out data tables. All the
methods from the method table are performed. Alternatively, just lower-
level objects from existing orders can be changed.
You can process the transferred data with the Business Add-In (BAdI)
IBAPI_ALM_ORD_MODIFY to, for example, merge data from the external
system with data from the R/3 system. The BAdI is called up as soon as
the transferred data is converted into the internal format. The tests
then take place after this.
Construction of Method Table
o REFNUMBER Reference number for linking object methods - attributes
The reference number is the line of the database which contains the
corresponding data. The data table is determined by the object type.
o OBJECTTYPE Object category
The object category specifies which object from the order should be
processed. The key words listed here are not language-dependent and
must be transferred exactly as they are. The following objects
exist:
- HEADER Order header
- PARTNER Partner data
- USERSTATUS User status
- OPERATION Operation data
- RELATION Relationships
- COMPONENT Components
- TEXT Long texts
- (empty) ,General BAPI functions (save)
o METHOD Methods
The methods with which the data should be processed. The following
functions exist:
- CREATE Create objects
- CHANGE Change objects
- DELETE Delete objects
- RELEASE Release
- TECHNICALCOMPLETE Technically complete
- ATPCHECK Availability check
- CALCULATE Calculate
- SCHEDULE Schedule
- DELELTEDSEX Delete the status for external scheduling at
operation level
- SAVE Save all data
- DIALOG Call-up dialog. See explanation below.
- TRACE Write trace file in the specified file to the
frontend
o OBJECTKEY SAP external object key
This key is for assigning the lower-level objects correctly to the
corresponding objects, as there is always just one key in the data
table. The key must have the following structure:
- 1-12 Order number
When creating orders with internal number assignment, a
reference number beginning with % must be entered here. The
BAPI then returns this number and the number actually assigned.
- 13-16 Operation number
- 17-20 Sub-operation number
For relationships, the key is structured as follows:
- 1-12 ,Order number from
- 13-16 Operation number from
- 17-28 Order number to
- 29-32 Operation number to
The following methods are permissible for the individual objects:
o HEADER:
CREATE, CHANGE, RELEASE, TECHNICALCOMPLETE, ATPCHECK, CALCUALTE,
SCHEDULE
o OPERATION
CREATE, CHANGE, DELETE, DELETEDSEX
o PARTNER, RELATION, COMPONENT, USERSTATUS, TEXT:
CREATE, CHANGE, DELETE
o (empty):
SAVE, DIALOG, TRACE
Data tables and update tables
The objects have one or more data tables. For some objects you can
specify which of the fields specified in the structure should be
changed. For this you must set the field in the corresponding table to X
as in the data table. If no update-table is transferred, then only
those fields are set that have a value that is not initial. This
simplifies the transfer data. However, this means it is not possible to
delete fields. If an update structure should only be specified for some
data records, the table with the update fields must nonetheless have the
same amount of lines as the data table. The empty lines are then
treated as if no update structure was transferred. The objects
"Partner", "User Status", and "Text" have no update tables. The whole
data record is always copied here.
References
The objects use the field REFNUMBER from the method table to refer to
the lines in the data table. Counting always begins with 1. In doing
this, REFNUMBER also refers to the update table. However, in the method
table there is a second reference to higher-level objects for
lower-levels objects. The field OBJECTKEY must be filled with order
number, operation number, and sub-operation number, as specified above.
If lower-level objects of a newly-created order should be changed, then
you must enter a temporary order number that must begin with %. Several
orders can be numbered serially, for example, with %00000000001,
%00000000002 ... .
The following objects have special treatment for REFNUMBER:
o Partner
o Texts
Partners have an order number in the data table. During processing of
the method table, all those entries in the data table are processed
which have an order number that is the same as that in the line to which
the method refers. Thus, through just one entry in the method table,
several partners can be changed.
Texts are composed of two tables. The first table (IT_TEXT) is made up
of the header data of the text. Here you must specify the object and the
first and last line of the text table (respectively inclusive, counting
from 1). Through this, a line segment is specified in the text line
table (IT_TEXT_LINES).
Peculiarities in processing
The BAPI processes the transferred methods in a particular sequence,
which must not correspond to the sequence in the methods table.
o Write trace file
o Change user status time period 1
o Delete objects (dependent first)
o Create new objects
o Change existing or newly-created objects
o Change user status time period 2
o Status change of order
o Save data
The methods are performed such that lower-level objects can also be
assigned to newly-created objects. For example, first the operations are
created, and then the components. Long texts can also be created for the
objects.
Components have an exceptional position. Components are created through
the assignment to an operation, that is, using the "key" order/
operation (item number). However, as this is not the unique component
key, you can only access the components to change them, delete them, or
add long texts by using the reservation number/-item, which is only
given after saving. This means that, for example, you cannot create a
long text when you create the component.
User status changes can take place at two different time points. Time
point 1 is before the object changes, time point 2 is after the object
changes and before the status change of the system. These time points
should be defined in the transfer table in the field CHANGE_EVENT. The
field documentation contains the possible values.
The external scheduling is offered by the BAPI as a special function.
THe BAPI can set the date field directly at the operation level, and
select the operation with the status DSEX "Date set by external system".
This status prevents any further scheduling of the operation, it keeps
the transferred dates. For this, set the category 'X' in the restriction
categories. When reading the operation, this category is also returned,
independent of the category of restriction set in the dialog. To delete
the status, you can call up the method DELETEDSEX for the object
operation. The external scheduling cannot be influenced in the dialog.
All changes to the scheduling restrictions in the dialog are saved as
normal, but are not relevant for the scheduling as long as the status
DSEX is active.
Every time the BAPI is called up, a SAVE or DIALOG method must be
transferred. Normally, calling up a BAPI is seen as a transaction. All
data that is changed in the BAPI should be saved to the database
immediately. The BAPI checks whether a SAVE method exists, otherwise it
terminates processing. A test run of the BAPI is composed of a normal
call-up using the SAVE method and a subsequent
BAPI_TRANSACTION_ROLLBACK. To call up the BAPI without the SAVE method,
for example, to realize dialog transactions, the BAPI can be called up
with the DIALOG method. This switches off the check for the SAVE method.
The processor must then ensure that later either a SAVE method or a
BAPI_TRANSACTION_ROLLBACK is called up.
A BAPI_TRANSACTION_COMMIT without SAVE method terminates processing in
the update to ensure that no inconsistent data is written to the
database. The processor who called up the BAPI does not receive any
confirmation for the termination of the update in the target system.
This logic is necessary as the order data was flagged for updating with
BAPI_TRANSACTION_COMMIT through the SAVE method. However, the status
information was already flagged for updating when the BAPI was called
up. A BAPI_TRANSACTION_COMMIT without SAVE method then just saves the
status information and would generate inconsistent orders, if the
updating was not terminated.
Customer Enhancement
The BAdI IBAPI_ALM_ORD_MODIFY can be used to change the transferred
data. The BAdI is called up after the conversion of the transfer
structure into the structures used internally. Additional data can be
transferred using the table EXTENSION_IN. Only then is the data checked.
Example
The following examples should clarify the use.
Creating an order
OBJECTKEY should be filled with a temporary key. The BAPI returns this
key together with the assigned order number in the return table
ET_NUMBERS . The order number in the HEADER table should also be filled
with the number. For external number assignment, the external number
should be specified. The update structure can be transferred if
necessary.
Methods table
REFNUMBER OBJECTTYPE METHOD OBJECTKEY
1 HEADER CREATE %00000000001
IT_HEADER
ORDERID ORDER_TYPE PLANPLANT ...
%00000000001 PM01 1000 ...
Creating an order with operation and long text
Methods table
REFNUMBER OBJECTTYPE METHOD OBJECTKEY
1 HEADER CREATE %00000000001
1 OPERATION CREATE %00000000001
1 TEXT CREATE %000000000010010
IT_HEADER
ORDERID ORDER_TYPE PLANPLANT ...
%00000000001 PM01 1000 ...
IT_OPERATION
ACTIVITY SUB_ACTIVITY CONTROL_KEY WRK_CNTR ...
10 PM01 MECHANIC ...
IT_TEXT
ACTIVITY ... TEXTSTART TEXTEND
10 ... 1 2
IT_TEXT_LINES
TDFORMAT TDLINE
* Longtext for operation 10, line 1
* Line 2 of the long text
Notes
Using the BAPI to process the order data cannot support all the functions
of the transaction. This applies in particular for the following
functions:
Order header data
o The object list cannot be processed.
o Refurbishment orders are not supported.
o The estimated costs cannot be processed - only the estimated overall
costs of the order.
o Notification data cannot be processed with the order BAPI. Even if
the settings in Customizing are such that the orders and
notifications can be maintained on one screen, no notification is
created for the order.
o Permits cannot be processed.
o The order addresses cannot be processed.
o Individual partner addresses cannot be maintained.
o The settlement rule cannot be maintained.
Order functions
o Printing the papers is not possible.
o Locking and unlocking the order is not possible.
o Accepting and rejecting quotations is not possible.
o Business completion is not possible.
o Flagging for deletion is not possible.
o The log cannot be displayed.
o User default values are not used.
o The field selection is not checked.
o The Customer Exits/BAdIs are not executed completely.
o Joint ventures are not supported.
o Funds Management is not supported.
o Investment orders are not supported.
o No integration of service products with task lists possible.
o No integration of configurable service products possible.
o Assignment of sales document items with service products in
accordance with the aforementioned conditions.
Operation data
o A change of the control key in the operation is not possible, if
this leads to a change of the processing type (internal-/external
processing)
o User status change not possible.
o Production resources and tools cannot be processed.
o Service lines cannot be processed.
o Task list integration is not supported.
o Linking operations with object list is not supported.
Component data
o User status change not possible.
o BOM data cannot be processed.
o The delivery address cannot be processed.
Further information
See also the documentation for the individual transfer tables.
Parameters
IT_METHODS
IT_HEADER
IT_HEADER_UP
IT_HEADER_SRV
IT_HEADER_SRV_UP
IT_USERSTATUS
IT_PARTNER
IT_PARTNER_UP
IT_OPERATION
IT_OPERATION_UP
IT_RELATION
IT_RELATION_UP
IT_COMPONENT
IT_COMPONENT_UP
IT_TEXT
IT_TEXT_LINES
EXTENSION_IN
RETURN
ET_NUMBERS
Exceptions
Function Group
IBAPI_ALM_ORDER
Regards
Uwe -
U00BFMultiple user status for WBS Element?
Hello,
I need to create multiple user status for a WBS element.
I'm using the BAPI: BAPI_BUS2054_SET_STATUS
CALL FUNCTION 'BAPI_BUS2054_SET_STATUS'
Importing
return = ls_returnbapi1
TABLES
I_WBS_SYSTEM_STATUS =
i_wbs_user_status = it_wbs_user_status"--> This table contais 2 record, with the same WBS elements and diferent status
e_result = it_result.
I put several rows (two) in the table it_wbs_user_status., I put two rows, the WBS elements for the same item with two different status, but I get error because it says that the WBS element is repeated.
¿Can you have multiple user status for the same element PEP? I try it in the transaction CJ20N too, and I don't Know.
Thanks.In transaction CJ20N you can change user status for each WBS elements.
Menu --> Edit --> Status --> User Status --> you can choise betwen "Set" or "Set & Pass On".
I want BAPI, function , etc.... that do the same thar "Set" , not "Set & Pass On".
BAPI_BUS2054_SET_STATUS = "Set & Pass On"
Thanks -
BAPI_BUS2173_SET_STATUS should be able to set user status profile.
Hi,
I need use a workflow to setup user status profile for PHASE and TASK, but I found that the unique easy way to setup the user status profile for PHASE or TASK is manual operation. I have created a user status profile of the BUS2173 and BUS2175. I can't use BAPI_BUS2173_SET_STATUS function to setup user status profile, but it can be used to setup a user status after the user status profiel has been setup by manuay.
Why?
Best regards,
Arrow Yang.Hi,
Try calling BAPI_BUS2173_SET_STATUS first time for setting the status profile by passing the status profile in iv_status_profile parameter and the phase guid but not passing the user status to the bapi.
Now after this again call the same bapi, this time just passing the user status and phase guid and not passing anything in the status profile.
We have used this bapi to set the status profile.
Regards,
Simmi -
Setting user status using actions in business activity
Hi
I have defined a new action profile. In that I have defined a new action using which I want to set user status to overdue. I have also defined a new user status "overdue".
Now I want to set user status to overdue. For that we have defined new badi implementation also, but it is not able to change the status.
Please tell me what all steps I need to do, to make it work.
Thanx in advance.
Cheers
HiteshHi Hitesh,
Check whether processing parameters are given correctly
It should be given as below
Element : PROCESS
Name : PROCESS
Type Name : CRM_J_STATUS
Initial value : OPEN (here you can give the one you want )
Let me know if you have any issues.
Reward points if it helps.
Regards,
Madhu -
Can we set user status in tj30 ?
Hi all,
can we set user status in tj30 ?
i've created a new status profile and it seems SAP automaticaly generate all of status in my status profile to table tj30.
but the data in column estat of table tj30 that created is started from E0001.
can we set the data start from certain number ( for example : from E0060 ) not from E0001 ?
or can we update it from E0001 to E-something ( for example : to E0056 ) ?
please advice or breif me.
many thanks in advanceHi Eddhie,
You must perform the following steps manually:
1. Transaction SPPFCADM
2. Select the application
"CRM_ORDER"
1. Click 'Define action profiles and actions'
2. Select the action profile (if you are using the standard action profile)
"SMSD_SERVICE_ORDER_DNO"
1. Double-click 'Action definition'
2. Select the action
"SMSD_SRVC_ORDER_DNO_SAP_UPDATE"
1. Double-click 'Processing types'
2. Go to the change mode using the 'Display/change' button
3. Press the "Change" button in the screen area "Method call settings" in the line "Define processing parameters".
4. Click the 'Create' pushbutton in the dialog box that is then displayed.
5. Enter the following data:
a) Element: USER_STATUS
b) Name: USER_STATUS
c) Short description: USER_STATUS
d) Data type tab, ABAP dictionary reference
Structure TJ30
Field ESTAT
e) "Initial value" tab page, entry "E0060" in the field USER_STATUS (or another allowed user status from the status profile used if desired).
f) Copy the entries.
6. Save
Check OSS Note (663970) for more detail.
Please award points if the solution is helpful.
Thanks
Sumi -
Activation of User status for Prod. order
Hi,
I have created a status profile with a status as a user status for production order. Now the thing is how to activate this user status for a specific transaction.
the requirement is after settlement the user status should get activated for production order.
Regards
Amit ParkhiHi Amit,
As told by Ajay , after assigning Status Profile in OPJH you can assign User Status to production order as below:
Pls. go through the following procedure for activating the User Status :
Activating User Statuses
Use
You can activate a user status at order header and at operation level.
Procedure
Order Header Level
Go to the order header.
Choose .
Choose Edit ® Direct entry.
The system displays a dialog box in which you can select the permitted user statuses.
Position the cursor on the required user status and choose Choose .
Operation Level
Go to the operation overview.
Select the operation in question.
Choose .
Choose Edit ® Direct entry.
The system displays a dialog box in which you can select the permitted user statuses.
Position the cursor on the required user status and choose Choose .
Pls. follow the above procedure as per rquirement and set user status accodingly.
Pls. revert if any doubt and reward if useful.
Regards,
Tejas
Edited by: Tejas Pujara on Jun 23, 2008 8:10 AM
Edited by: Tejas Pujara on Jun 23, 2008 8:11 AM -
User Status for process orders
Dear Experts,
We are using user statuses for process orders & with this we are resricting or allowing certain business transactions.
My question is can we automatically set the two consecutive user statuses ?
Means when the GR for process order is done i have set the user status as GR.
Next user status is CLSD.
So after completing the closing of process order by settlement transactions can i set the staus as CLSD automatic?
I am trying to do it but i am getting error as-
"Status CLSD is not allowed (ACT 30000292 0010)"
Your help is highly appriciated
Regards
VivekHi,
1) Still your order is carrying cost, it has not settled properly
2) you can check in CO02 itself, Go to tool bar at top
3) here Go to > Costs > Analysis & check whether order is set to Zero
4) you can check in KKBC_ORD also
Also, pls refer below link
Re: HOW automatic order status change to CLSD
regards,
Sankaran -
User status for order confirmation
Dear Expert
My requirement is when system status for maintenance order is CNF and authorize person agreed with all data in confirmation, he will set user status and then only I can complete my order (Teco).
Till now I created one user status OCAP (operation conf aprroved. ) and I allowded TECO only at this status. when system will have any other user status TECO is forrbiden. and it is working fine.
but now if my order is not CNF and person approves order(select OCAP) system allow to do TECO.
How I can stop this?
I mean if order status is not CNF even person select any user status system should not allow for TECO. If both condition are correct then only system will allow for TECo.
Please suggest
Regards,
Prasadsolved.
it is only works for operation
and not order header
Maybe you are looking for
-
Ipod no longer recognized by itunes (on MAC)
I am running a Mac 10.6.8 and since my last updates, my ipod is no longer recognized in itunes? Is there any conflictual extensions? PLEASE HELP? What do i have to do?? Thanks
-
Laptop stolen - how do I import the music on my ipod to the itunes on my new laptop?
Title pretty much says it all. My laptop was stolen and I've now got a new one. I've installed itunes and I've logged into my itunes account. When I try to sync my ipod to my new itunes it won't let me - it only gives me the option of erasing all the
-
hello, I am trying to track what parameter values are exactly passed to a procedure. When I enabled Trace using dbms_system.set_sql_trace_in_session and analyzing output using TKPROF, it's NOT giving REAL parameters values. Instead, it's giving somet
-
Unidentified NullPointerException
Hello, In my app log file, sometimes appears a NullPointerException that I can not identify who is generating. The message is: 09/11/19 14:24:47.617 myApp: Servlet error java.lang.NullPointerException at com.sun.faces.context.ExternalContextImpl
-
Will the Keywords transfer from Lightroom to Bridge?
Will the Keywords transfer from Lightroom to Bridge