How to trace the DO(Sales Order)
Dear Forum,
The process is DO(Sales Order)--->Delivery Order(OBD).
I have deleted the Delivery.
How to get the Sales Order number aginst this Delivey Order.
Thanks in advance !!!!!
Use change pointers
http://help.sap.com/saphelp_nw04s/helpdata/en/12/83e03c19758e71e10000000a114084/frameset.htm
Activate
http://help.sap.com/saphelp_nw04/helpdata/en/0f/9d563cf19bcb43e10000000a11405a/frameset.htm
Regards,
Prateek
Similar Messages
-
How to find the Open sale orders till date for given plant and material ?
Hi experts,
I have a requirement to calculate the open sale orders for a given plant and material. I have tried in VA05 wherein i can get only for the material and sales area combination. From the document nos obtained from VA05 i can then find the plant. But my question is how do i get the output of VA05 into my progra. (can i use submit for a module pool report ).
Also if ther is some other standard table or Function module to find the open sale orders till a given date ,it will be even more helpful....in which case i can drop the VA05 route.
Kindly help
Thanks in advance
AshwinHi Ashwin,
You can use SAP Tables VBAK and VBUP to get to know if the document is complete or not.
VBUK-GBSTK is the field that will give you the status of the Sales Order .
VBUK is used at header level , whereas VBUP is used for Item level.
So in your case what I would do is :
Get the Sales Orders that satisy the plant and material criteria from VBAP table , take this Sales Document numbers and go to VBUK or VBUP table to get the Sales Order Status.
If I need to find the open quantity as well I will link to VBFA table based on the document number.
Reward if helpful.
Thanks,
Imran -
How to find the obsolete sales order
Hi Gurus,
how can we find out the obsolete sales order in the system, in our situation these orders consuming the forecast now and causing problems..how to find these and delete..please share your ideasHi
Please go to Se38 and execute /SAPAPO/SDORDER_DEL report. You can execute the report for respective location by using different flags. I hope this will provide you the required information.
Thanks and Information.
Amol -
How to trace that particular Sales Order is changed (amended)
Dear All,
The issue is to know whether the particular Sales Order is Changed (amended).
Is there any concept in Sales Order like amendement.
Requirement is, once the order is created n later the customer specifications are changed n accordingly they have made changes in Sales Order (VA02) too.
However, now client wanted to track the record of this particular Sales Order which is Changed they call it as Amended & they even wanted to know how many times its changed. For eg., If suppose 100 is the Sales Order No. after the changes in VA02 it should have some version of 100.
i/p will be helpful n rewarded too.
With Regards,
VijayashreeHi
Go to VA02 -
In menu path ENVIRONMENT -- Changes---
this is available in all versions
And available in sales, delivry, billing documents
also in customer and material master
Reward if helpfull
Muthupandiyan -
How to Release the blocked Sales orders?
Hi Gurus,
Requirement: To Release the Blocked Salesorders
problem: find out any Tables and procedure to release blocked SO(allow to creating delivery for SO).
how to Customer CreditLimit and Tables of Theses...............
Thanks in Advance..
sivakumar.kasaHi..
AS per i knew......
how to know cutomer CreditLimit?
FD32,FD33...tcodes
how to release blocked Sales order?
VKM3
Wait for some other views -
How to retrieve the ARCHIVED Sales order data
Hi All,
When issuing the output for the delivery, it is giving an error saying 'Sales Order XXXX does not exist' due to which the prices in the output were displayed as '0'. Reason for this can be that 'the order might have been archived'.
My requirement is,
1. If Sales Order doesnu2019t exist in data base then need to check if Sales order exists in archive data base.
2. If yes, take needed data from archive data base tables to calculate price. The logic of price calculation should be the same as for not archived Sales Orders.
Can anyone help me on this..?
Please tell me how to check whether the Sales order exists in the Archived database. Please share the table names(sample logic if possible) sothat I can use them in the report logic.
Please tell me how to pull the data from the archive database tables to calculate the price.
Thank you in advance.
Thanks & Regards,
Paddu.
Edited by: Paddu K on Feb 23, 2009 3:42 PM*& Form get_archive_data
* Fetch Archive Data
FORM get_archive_data .
CLEAR: g_read_handle, g_commit_cnt,
g_read_cnt, g_reload_cnt,it_rel_tab,it_bseg_a,it_bkpf_a,
it_bset_a, gt_result.
REFRESH: it_rel_tab[],it_bseg_a[],it_bkpf_a[],
it_bset_a[], gt_result[].
*Populating selection screen fields to field-symbols
PERFORM build_fs_select_options.
*Call FM as_api_read FI Data
CALL FUNCTION 'AS_API_READ'
EXPORTING
i_fieldcat = 'SAP_FI_DOC_002'
i_selections = ft_selections[]
* I_OBLIGATORY_FIELDS =
* I_MAXROWS =
IMPORTING
e_result = gt_result[]
EXCEPTIONS
parameters_invalid = 1
no_infostruc_found = 2
field_missing_in_fieldcat = 3
OTHERS = 4
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
IF NOT gt_result[] IS INITIAL.
*Sorting by KEY and Offset
SORT gt_result BY archivekey archiveofs.
*To delete duplicates
DELETE ADJACENT DUPLICATES FROM gt_result COMPARING archivekey
archiveofs.
*looping the internal table
LOOP AT gt_result.
*Get read handle for object
CALL FUNCTION 'ARCHIVE_READ_OBJECT'
EXPORTING
object = 'FI_DOCUMNT'
archivkey = gt_result-archivekey
offset = gt_result-archiveofs
IMPORTING
archive_handle = g_read_handle
EXCEPTIONS
OTHERS = 1.
IF NOT sy-subrc IS INITIAL.
MESSAGE ID sy-msgid TYPE 'I' NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
EXIT.
ENDIF.
IF sy-subrc = 0.
*Get Acoounting Document details
PERFORM object_read_opened
TABLES it_rel_tab
it_bseg_a
it_bkpf_a
* it_bset_a
* it_bsik_a
* it_bsak_a
it_bsid_a
it_bsad_a
* it_bsec_a
USING g_read_handle
l_archobj
g_commit_cnt
g_read_cnt
g_reload_cnt
ENDIF.
*close the file.
CALL FUNCTION 'ARCHIVE_CLOSE_FILE'
EXPORTING
archive_handle = g_read_handle
EXCEPTIONS
internal_error = 1
wrong_access_to_archive = 2
OTHERS = 3.
IF sy-subrc <> 0.
MESSAGE i004." 'Unable to close archive session'.
EXIT.
ENDIF.
ENDLOOP.
ELSE.
MESSAGE i000 WITH 'No data found for Archived data'(095).
EXIT.
ENDIF.
*Start of Changes by GTHATIKONDA on 10/17/2008 #ECDK902204
IF NOT it_bkpf_a[] IS INITIAL.
SORT it_bkpf_a BY belnr.
DELETE ADJACENT DUPLICATES FROM it_bkpf_a COMPARING belnr.
DELETE it_bkpf_a WHERE budat GT p_budat. "#ECDK902206
ENDIF.
*Start of Changes by GTHATIKONDA on 10/17/2008 #ECDK902206
IF it_bkpf_a[] IS INITIAL.
MESSAGE i000 WITH 'No data found for Archived data'(095).
ENDIF.
*End of Changes by GTHATIKONDA on 10/17/2008 #ECDK902206
IF NOT it_bseg_a[] IS INITIAL.
SORT it_bseg_a BY belnr gjahr buzei.
DELETE ADJACENT DUPLICATES FROM it_bseg_a COMPARING
belnr gjahr buzei.
ENDIF.
*End of Changes by GTHATIKONDA on 10/17/2008 #ECDK902204
ENDFORM. " get_archive_data
*& Form build_fs_select_options
FORM build_fs_select_options .
REFRESH: ft_selections.
*Comapny code
APPEND INITIAL LINE TO ft_selections ASSIGNING <fw_selections>.
<fw_selections>-fieldname = 'BUKRS'.
APPEND INITIAL LINE TO <fw_selections>-selopt_t ASSIGNING <lw_selopt>.
MOVE p_bukrs TO <lw_selopt>-low.
MOVE 'I' TO <lw_selopt>-sign.
MOVE 'EQ' TO <lw_selopt>-option.
*Customer
APPEND INITIAL LINE TO ft_selections ASSIGNING <fw_selections>.
<fw_selections>-fieldname = 'KUNNR'.
LOOP AT s_kunnr.
APPEND INITIAL LINE TO <fw_selections>-selopt_t
ASSIGNING <lw_selopt>.
MOVE-CORRESPONDING s_kunnr TO <lw_selopt>.
ENDLOOP.
*Start of changes by GTHATIKONDA on 16/10/2008 #ECDK902192
**Customer Group
* append initial line to ft_selections assigning <fw_selections>.
* <fw_selections>-fieldname = 'KTOKD'.
* loop at s_ktokd.
* append initial line to <fw_selections>-selopt_t
* assigning <lw_selopt>.
* move-corresponding s_ktokd to <lw_selopt>.
* endloop.
*End of changes by GTHATIKONDA on 16/10/2008 #ECDK902192
*Profit Center
APPEND INITIAL LINE TO ft_selections ASSIGNING <fw_selections>.
<fw_selections>-fieldname = 'PRCTR'.
LOOP AT s_prctr.
APPEND INITIAL LINE TO <fw_selections>-selopt_t
ASSIGNING <lw_selopt>.
MOVE-CORRESPONDING s_prctr TO <lw_selopt>.
ENDLOOP.
*Commented #ECDK902210
**Key Date
* append initial line to ft_selections assigning <fw_selections>.
* <fw_selections>-fieldname = 'BUDAT'.
* append initial line to <fw_selections>-selopt_t assigning <lw_selopt>
* move p_budat to <lw_selopt>-low.
* move 'I' to <lw_selopt>-sign.
* move 'EQ' to <lw_selopt>-option.
*Aging Period1
APPEND INITIAL LINE TO ft_selections ASSIGNING <fw_selections>.
<fw_selections>-fieldname = 'ANZTA'.
APPEND INITIAL LINE TO <fw_selections>-selopt_t ASSIGNING <lw_selopt>.
MOVE p_ag1 TO <lw_selopt>-low.
MOVE 'I' TO <lw_selopt>-sign.
MOVE 'EQ' TO <lw_selopt>-option.
*Aging Period2
*Start of changes by GTHATIKONDA on 16/10/2008 #ECDK902192
* append initial line to ft_selections assigning <fw_selections>.
* <fw_selections>-fieldname = 'ANZTA'.
*End of changes by GTHATIKONDA on 16/10/2008 #ECDK902192
APPEND INITIAL LINE TO <fw_selections>-selopt_t ASSIGNING <lw_selopt>.
MOVE p_ag2 TO <lw_selopt>-low.
MOVE 'I' TO <lw_selopt>-sign.
MOVE 'EQ' TO <lw_selopt>-option.
*Aging Period3
*Start of changes by GTHATIKONDA on 16/10/2008 #ECDK902192
* append initial line to ft_selections assigning <fw_selections>.
* <fw_selections>-fieldname = 'ANZTA'.
*End of changes by GTHATIKONDA on 16/10/2008 #ECDK902192
APPEND INITIAL LINE TO <fw_selections>-selopt_t ASSIGNING <lw_selopt>.
MOVE p_ag3 TO <lw_selopt>-low.
MOVE 'I' TO <lw_selopt>-sign.
MOVE 'EQ' TO <lw_selopt>-option.
*Aging Period4
*Start of changes by GTHATIKONDA on 16/10/2008 #ECDK902192
* append initial line to ft_selections assigning <fw_selections>.
* <fw_selections>-fieldname = 'ANZTA'.
*End of changes by GTHATIKONDA on 16/10/2008 #ECDK902192
APPEND INITIAL LINE TO <fw_selections>-selopt_t ASSIGNING <lw_selopt>.
MOVE p_ag4 TO <lw_selopt>-low.
MOVE 'I' TO <lw_selopt>-sign.
MOVE 'EQ' TO <lw_selopt>-option.
*Aging Period5
*Start of changes by GTHATIKONDA on 16/10/2008 #ECDK902192
* append initial line to ft_selections assigning <fw_selections>.
* <fw_selections>-fieldname = 'ANZTA'.
*End of changes by GTHATIKONDA on 16/10/2008 #ECDK902192
APPEND INITIAL LINE TO <fw_selections>-selopt_t ASSIGNING <lw_selopt>.
MOVE p_ag5 TO <lw_selopt>-low.
MOVE 'I' TO <lw_selopt>-sign.
MOVE 'EQ' TO <lw_selopt>-option.
ENDFORM. " build_fs_select_options
*& Form object_read_opened
* To Fetch Arichive Data
FORM object_read_opened TABLES it_rel_tab
it_bseg_a
it_bkpf_a
* it_bset_a
* it_bsik_a
* it_bsak_a
it_bsid_a
it_bsad_a
* it_bsec_a
USING value(g_read_handle) LIKE sy-tabix
value(l_archobj) LIKE arch_def-object
value(g_commit_cnt) LIKE arch_usr-arch_comit
g_read_cnt TYPE i
g_reload_cnt TYPE i.
DATA: BEGIN OF table_wa ,
table LIKE arch_stat-tabname,
END OF table_wa.
DATA: lit_data(2048) TYPE c OCCURS 1 WITH HEADER LINE.
DATA: l_structure LIKE arch_stat-tabname,
l_lin TYPE i.
CLEAR: it_table_org1,lit_struc,it_table_org2,table_wa,it_rel_tab.
REFRESH: it_table_org1[],lit_struc[],it_table_org2[],it_rel_tab[].
CLEAR: g_duprec,g_read_cnt,g_reload_cnt,g_object_cnt.
*Read data from the infostructure
DO.
ADD 1 TO g_object_cnt.
CLEAR l_structure.
CALL FUNCTION 'ARCHIVE_GET_NEXT_RECORD'
EXPORTING
archive_handle = g_read_handle
IMPORTING
record = lit_data
* RECORD_CURSOR =
* RECORD_FLAGS =
record_structure = l_structure
* RECORD_LENGTH =
* RECORD_REF =
EXCEPTIONS
end_of_object = 1
internal_error = 2
wrong_access_to_archive = 3
OTHERS = 4
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
EXIT.
ENDIF.
IF NOT l_structure IS INITIAL.
table_wa-table = l_structure.
APPEND table_wa TO it_rel_tab.
ENDIF.
APPEND lit_data.
CLEAR l_lin.
FIELD-SYMBOLS: <fs_struc> TYPE c.
CASE l_structure.
*BKPF data
WHEN 'BKPF'.
ASSIGN it_bkpf_a TO <fs_struc> CASTING.
<fs_struc> = lit_data.
APPEND it_bkpf_a.
*BSID data
WHEN 'BSID'.
ASSIGN it_bsid_a TO <fs_struc> CASTING.
<fs_struc> = lit_data.
APPEND it_bsid_a.
*BSAD data
WHEN 'BSAD'.
ASSIGN it_bsad_a TO <fs_struc> CASTING.
<fs_struc> = lit_data.
APPEND it_bsad_a.
*BSEG data
WHEN 'BSEG'.
ASSIGN it_bseg_a TO <fs_struc> CASTING.
<fs_struc> = lit_data.
APPEND it_bseg_a.
ENDCASE.
REFRESH lit_data.
CLEAR g_object_cnt.
ENDDO.
ENDFORM. " object_read_opened
*& Form get_bsid_bsad_archive_data
*If Exclude Spl. GL Trnasaction is initial get BSID BSAD Archive data *
FORM get_bsid_bsad_archive_data .
*Work Area
DATA: wa_bsid TYPE type_bsid.
*Reading BSAD Archive internal table
* loop at it_bsad_a where bukrs eq p_bukrs
*Start of changes by GTHATIKONDA on 10/14/2008 #ECDK902180
*Commented by GTHATIKONDA on 10/17/2008 #ECDK902204
LOOP AT it_bkpf_a WHERE bukrs = p_bukrs AND
budat LE p_budat. "#ECDK902206
*End of changes by GTHATIKONDA on 10/14/2008 #ECDK902180
LOOP AT it_bseg_a WHERE bukrs EQ p_bukrs AND
belnr EQ it_bkpf_a-belnr AND
gjahr EQ it_bkpf_a-gjahr AND
augdt GT p_budat AND
* koart eq 'D' and
kunnr IN s_kunnr AND
prctr IN s_prctr.
*Changes by GTHATIKONDA on 10/17/2008 #ECDK902204
* loop at it_bkpf_a where budat le p_budat."#ECDK902206
*Move corresponding fiels
MOVE-CORRESPONDING it_bseg_a TO wa_bsid.
wa_bsid-blart = it_bkpf_a-blart.
wa_bsid-budat = it_bkpf_a-budat.
wa_bsid-bldat = it_bkpf_a-bldat.
APPEND wa_bsid TO i_bsad.
CLEAR wa_bsid.
ENDLOOP.
ENDLOOP.
IF NOT i_bsad[] IS INITIAL.
APPEND LINES OF i_bsad TO i_bsid.
ENDIF.
*Start of Changes by GTHATIKONDA on 10/17/2008 #ECDK902206
IF NOT i_bsid[] IS INITIAL.
SORT i_bsid BY belnr.
*Commenting this logic by GTATIKONDA on 10/31/2008 #ECDK902245
* delete adjacent duplicates from i_bsid comparing belnr.
ENDIF.
*End of Changes by GTHATIKONDA on 10/17/2008 #ECDK902206
ENDFORM. " get_bsid_bsad_archive_data
*Reading BSAD Archive internal table
* loop at it_bsad_a where bukrs eq p_bukrs
*Start of changes by GTHATIKONDA on 10/14/2008 #ECDK902180
*Commented by GTHATIKONDA on 10/17/2008 #ECDK902204
LOOP AT it_bkpf_a WHERE bukrs = p_bukrs AND "#ECDK902206
budat LE p_budat.
*End of changes by GTHATIKONDA on 10/14/2008 #ECDK902180
LOOP AT it_bseg_a WHERE bukrs EQ p_bukrs AND
belnr EQ it_bkpf_a-belnr AND
gjahr EQ it_bkpf_a-gjahr AND
kunnr IN s_kunnr AND
umskz EQ space AND
augdt GT p_budat AND
prctr IN s_prctr.
*Changes by GTHATIKONDA on 10/17/2008 #ECDK902204
* loop at it_bkpf_a where budat le p_budat. "#ECDK902206
*Move corresponding fiels
MOVE-CORRESPONDING it_bseg_a TO wa_bsid.
wa_bsid-blart = it_bkpf_a-blart.
wa_bsid-budat = it_bkpf_a-budat.
wa_bsid-bldat = it_bkpf_a-bldat.
APPEND wa_bsid TO i_bsad.
CLEAR wa_bsid.
ENDLOOP.
ENDLOOP.
IF NOT i_bsad[] IS INITIAL.
APPEND LINES OF i_bsad TO i_bsid.
ENDIF. -
How to amend the seeded sales order lines workflow
Hi,
I'd like to amend the workflow of order lines in sales order form in Order Management
I want to clear the schedule ship date field because
it is auto deafulted with sysdate
How to download the seeded workflow ?
How can i determien the needed amendment ?
Any Guide PLS ?
ThanksYou can download the workflow using the WFLOAD command - see MOS Doc 1569004.1
You will need Workflow Builder on a Windows PC to modify the workflow - see MOS Doc 1461991.1 and MOS Doc 125067.1 -
How to get the ammendment sales order number and original sales order no?
Hello sir's,
Please tell me the table for ammendment(revised) sales order number and original sales order no.
Thanks in advance,
vikramSolved
-
How to Change the Existing Sales Order Transaction
Hi all,
I am trying to change some of the fields in Existing Sales Order Transaction.
Fields which i am trying to change are Ext. Reference number and Net Value.
I am using CRM_ORDER_MAINTAIN to do so but its not working. I dont know if some BADI can solve my purpose.
If anyone of you have done something like this please share with me and suggest me the solution for that.
Thanks in Advance.
Regards,
Manoj TiwariThat you should be able to do in ORDER_SAVE badi.
You will be able to find lots of discussions on usage of this badi here in this forum.
You need to call ORDER_READ, then call ORDER_MAINTAIN to change the values according to your requirement.
Regards,
Kaushal -
Can anyone tell me how to insert the new sales order lines using API.
Hi,
I am trying to Insert new sales order lines using oe_order_pub.Process_Order API, but i am unable to insert.
Help me on this.
Thanks in Adavance
Shravan Kumar.Hi,
Have you checked this link?
http://download-west.oracle.com/docs/cd/B25516_08/current/acrobat/115omapi.zip
it has extensive information on OM APIs
Regards
Prashant Pathak -
Tracking the actual sale order quantity
Hi Friends,
How to track the actual sales order quantity given by the customer.
Ex: we assume the customer has placed an order of 100 units and stock is only 90 so we create the sales order for 90 units only.
How to find out the difference of 10 units as a report in standard sap system.
Thanks
AJDear AJ,
This is how normal sales process works.
You create Sales Order line item for the quantity that customer has requested. (eg: 100)
Then you do a ATP for that Line item. Let's say you have only 90 in the stock. In that case system will confirm 90 for the sales order line item. (You can see the confirmed quantity in the Schedule line tab)
Normally we don't change the LI quantity as per the ATP confirmed quantity (i.e 90). Because then we loose the visibility to the customers original requested quantity (i.e 100).
Say you don't change your Line Item Order quantity to 90. Then your delivery & billing will be for 90.
So you can see in VA05, Order quantity as 100 and confirmed quantity as 90.
Your sales reports will show delivery & billing as 90. So that you have a clear visibility to the original order quantity, delivered quantity & billed quantity.
Further if remaining (open) quantity 10 is appearing your MRP & creating troubles, please use Line Item Rejection Reason as Completed. So that everything is perfect.
Coming back to your issue.
Since your changing LI quantity to 90, you cant see 100 in the VA05 report. It always show the existing sales order line item quantity, which is 90 in this example.
Only way you can find your original sales order quantity is in the Line Item / Change Log.
This can be view by selecting below Menu option.
Environment -> Changes
If you execute it for the relevant Line Item, you can see the Change log. In that by double clicking relevant quantity change line, you can see the old value & new value. (In this example 100 & 90)
But that is not a good practice to do as changes will show all quantity changes that you might do based on customer request. (Imagine if you customer ask to change it later to 95 not 100).
In that case change log will display 100 to 95, then 95 to 90. So your loosing the required visibility.
Hope this is helpful to you ! -
How to trace the pr's with ref to sales order incase ici is 2 in mrp view
Hi, maintained 2 in ici field of mrp4 view of the roh material master. system generated pr's without any ref to sales orders. pls advise how to trace which pr's are for which sales order? pls advise.
HI,
It is not possible to do in SAP if you give Individial/collective requirement as 2, It is possible if you give 1 but your point is that there will be more PRs in the system. Iit is not possible through customizing.
I would like to suggest you some options, which of course requires manual intervention.
1. Suppose system genrates purchase requistion of quantity 100,(if you maintain ici 2) then you need to split the pr quantity in to more line items and then specify the Account assignment as Sales order and specify the sales order number.
OR
1. You have to maintain the vaious sales order details in a Item text in PR.
Note: Make sure MRP is behaving correctly.
Regards,
Sreenivasa
Edited by: Sreenivasa Rao on May 5, 2010 9:47 AM -
How to bring in the Open Sales Orders while performing Sales Order Conv
Hi,
Could you give some suggestions on the below:
How to bring in the Open Sales Orders while performing Sales Order Conversion in R12.
Thanks
PravinSee http://ramugvs.wordpress.com/2011/08/27/how-to-stage-and-import-an-order-using-order-import-api-apps-wms-ebiz-11i-r12/
Sandeep Gandhi -
How to avoid that two or more people alter the same Sales Order same time
I'm looking for a way to avoid that two or more people altering the same Sales Order at the same time.
If someone has entered a Sales Order in the system and something needs to be adjust it can be done by two or more people at the same time. The problem is that when someone is saving these changes, the changes of another person, who is still working on the same order, get lost.
So what we need is an alert that someone is already using this order and that no other person can make any changes at that time. So the order needs to be blocked for altering for any other person at that time.
To avoid this I think you have to do something with the Stored Procedure. Or has someone a more simple and better solution.
I've already put this thread in the Business One forum and someone suggested to put it in the Business One SDK forum, as there isn't a solution in Business One itself.
So if someone can give me a direction for a solution I would be very pleased.
Best regards,
TimHi Tim,
The only thing that comes close to what you want in standard SBO is Data Ownership. However, this can't stop someone editing a document that is already being edited.
You can't use stored procedures to track which document is open because the SBO_SP_TransactionNotification proc (which is the only one that you are able to customise) is triggered when a document is updated or added (or cancelled or closed) and not when the document is actually being edited in the user-interface.
You could do this by writing an addon that uses the UI API to trap events in the sales order form. In theory, a sales order is being edited if the sales order form is in Update mode (ie in order for the form to be in Update mode, the user must have selected an existing document and changed the value of at least one field). You can trap the event of the user changing a value and then log the user and document in a table. When other users try to edit the same document, you could check the table and then prevent them changing values. When the first user clicks on the update button (or cancels the update or closes the form etc etc) you can remove the lock on the document. However, I have doubts as to how robust it would be. The problem with this kind of locking solution is that you sometimes get 'stranded' locks (eg user was editing a document when their workstation crashed) and the solution can end up being more troublesome than it is worth.
Kind Regards,
Owen -
How to put 2 kinds of material prices on the same sales order
Hello SD Gurus,
I have a requirement to put a one-time price (e.g. installation price ) and a recurring monthly price on the same sales order.
I've tried the following but it is not working.
1. I have a pricing procedure (PSER01) in which I'm using the following price types:PR00 (Defined as a "Discount or Surcharge") and PRSV. I'm using PR00 to represent my one-time installation price. I'm using PRSV to represent my monthly+recurring price.
2. I used it for a material master in a sales order. I can add PR00 and see the green traffic light. But as soon as I add PRSV, the traffic light on PR00 turns yellow (Inactive because of subsequent price).
I've read several posts on the forum regarding this. Based on my understanding, I'm using two pricing conditions in one pricing procedure which is not allowed.
What can I do differently to enable the one-time price and monthly price to appear for my material master on the sales order?
Thanks so much for your help!Hi,
As per SAP Logic, if the condition type has condition class "C" then only one value is allowed.
if you want to add two values ( Fixed + Variable) then you can do the following logic.
1 ) Have one condition type say ZFIX ( Use this for Fixed Value ) cond class = C
2 ) another condition type Say ZVAR(Use this for variable value ) Cond Class = C
3 ) another condition type say Zxxx ( use this for your Final Value) cond class = C
now do not assign any access sequence to the third condition type. write a logic in the "Alt Calculation type " routine to get the value of this condition from the sume of ZFIX + ZVAR
i.e., ZXXX = ZFIX + ZVAR.
Make sure that the sequence of the codition types are mentioned exactly like the above.
this is because if you put ZXXX third then the system automatically ignores the value of ZFIX and ZVAR.
but the values against those condition types will be stores internally. So in future if we want some information also we can trace back..
let me know if you need further help..
thanks..
Maybe you are looking for
-
Remove alert | Edit | Change type 0 We are on windows environment as below - Server - - Win2k8 Std R2, - SQL 2008, - SP 2010 Foundation SP2 Client - - Win 8.1 64 Bit OS, - Browser - IE 11 - MS Office - 2010 - 14.0.4763.1000 Problem - While Opening
-
HT201320 Setup a 2nd e mail account
Trying to setup AOL e mail and settings opens then closes also can't open contacts
-
Service condition for contract
HI, i have created service condition and I am trying to create a contract with reference that predefined activity ,in that the price is not coming automatically from the condition master ,(but for the purchase order the price is coming automatically
-
hi how can i upload HR data (my client not implementing HR module) client asking that we can not say debit and credit line items it means one month may have 1000 debits and 50 credits ,how can i record in lsmw. thank you sekhar Moderator: Please, sea
-
Looking for a Popular IDE for JAVA
Hi folks, I am starting my journey into JAVA programming -I am wondering if there are any cheap or free Integrated Development Environment (IDE) for compiling and running Java programs. I downloaded SDK (Software development kit ,version 1.2) and I a