Reg:updation of likp-btgew field in vl02n transaction
hi friends,
in my requirement i have to populate the field likp-btgew in vl02n when the outbound delivery was created
i have updated the field by using user exits in program sapmv50a,
now the field is getting updated but my problem is when i change the line items weight dynamically the total
weight is not getting updated according to my change
i have read the sap oss note-415716(for delivery processing) the user exit (USEREXIT_SAVE_DOCUMENT_PREPARE)
is triggered only when i pressed save.
but my requirement is when user change any of the line item quantity and press enter the total weigt field has to get
updated bcz for multiple line items every time saving is not possible right? its bit lenghthier.........
can anybody pls suggest is there any other way or any usrexit or badi available for this req to update the screen
field likp-btgew dynamically.....
pls help......
regards
babu
hi khan,
thank u for ur reply,
the userexits i have choosen r working properly except in one case,when i remove or add any of the line items in my delivery total weigt is not getting updated,except in this case, it is working fine when i created the new order r if change the line items quantity it is working fine moreover i will check the userexits specified by u .
if there is any other way pls let me know guys...
regards
babu
Edited by: babu888 on Feb 10, 2012 3:59 AM
Similar Messages
-
F4 help for the batch field in VL02N transaction
We have upgraded our system from 4.6 to ecc 6.0 .In 4.6 the f4 help for the batch had " Batch selection via plant/Material/Storage location/Batch " which is not there in ECC 6.0.
Please tell us the procedure to add in the existing search help H_MCHA in ECC 6.0
Thanks
ArunaHi Aruna.
Create ur own search help using se11 tcode for required fields.
Thanks & Regards,
Kiran.
Plz give rewards if and only if it is helpfull. -
FM to update delivery details LIKP-BTGEW and LIKP-ANZPK
Hello All,
Can anyody please tell me a fucntion module to update the fields LIKP-BTGEW and LIKP-ANZPK.
I have checked BAPI_OUTB_DELIVERY_CHANGE and WS_DELIVERY_UPDATE. Both these FMs are not having these fields.
Request you to please help me out..
Regards,
Danish.This solution is in kzapk and kzntg.
Example:
CLEAR ls_vbkok.
ls_vbkok-vbeln_vl = <ls_created>-document_numb.
ls_vbkok-vbtyp_vl = <ls_created>-document_category_sd.
ls_vbkok-anzpk = id_volum.
ls_vbkok-kzapk = 'X'.
ls_vbkok-kzntg = 'X'.
ls_vbkok-wabuc = 'X'.
CALL FUNCTION 'WS_DELIVERY_UPDATE_2'
EXPORTING
vbkok_wa = ls_vbkok
update_picking = 'X'
synchron = 'X'
commit = 'X'
delivery = <ls_created>-document_numb
IMPORTING
ef_error_any = ld_error. -
Reg: Header text updation in VL02n transaction
Hi Experts,
i have one requirement in return delivery.
I am executing one customizing trasaction, and it displays screen.
In that screen i am editing the fileds and when i click on the save button i need to update in delivery transaction header texts (VL02n transaction goto header texts).Hi,
Use the SAVE-TEXT FM as below.
CALL FUNCTION 'SAVE_TEXT'
EXPORTING
HEADER = LS_THEAD
IMPORTING
NEWHEADER = LS_THEAD
TABLES
LINES = TLINETAB
EXCEPTIONS
ID = 1
LANGUAGE = 2
NAME = 3
OBJECT = 4
OTHERS = 5.
IF SY-SUBRC = 0.
Where LS_THEAD, CONTAINS:
TDOBJECT VBBK
TDNAME 00999999(Your delivery no)
TDID Z950
TDSPRAS E.
You can find this details, when you go to the transaction(VL02N) and enter some text and do the debug on SAVE_TEXT FM, then get the values it uses to save the text, use the same in you program.
Hope this helps,
Cheers,
Srini. -
Maximum "Total weight" LIKP-BTGEW in delivery
The business requirement is as follows u2013 If the Total weight LIKP-BTGEW u2013 in the delivery, at header level - is greater than X kg. Then the user cannot save the delivery (i.e. create a delivery). The user shall get a popup saying u201CDelivery can not be created / saved because the Total weight is greater than X kgu201D
Which program and userexit can I use?
Many thanks, in advance!Hi
Related with USEREXIT_MOVE_FIELD_TO_LIKP. It's true that this subroutine was designed to provide our own additional fields. If we modify standard field (not advisable), note says:
If standard fields of the structure LIKP are changed, you may have
to carry out determinations and checks that have already been
performed again to avoid data inconsistencies. Therefore, analyze
the dependencies before you change standard fields in the table
LIKP in this exit.
It goes on:
Data from preceding documents should be prioritized and transferred
using the copy control.
so, the solution to solve it in copy rules in my opinion is the proper solution. I'm not sure if LIKP-BTGEW is populated in this moment
So, create your own subroutine (999 for instance) with a coding as this:
FORM bedingung_pruefen_999 USING bp_subrc LIKE sy-subrc.
* Perform all checks as in routine 001
perform bedingung_pruefen_001 using bp_subrc.
check bp_subrc = 0.
IF likp-btgew > your_weight.
perform message_handling in program (programmname)
using posnr_low
'001'
'E'
'ZVL'
'excess of weight'
space
space
space.
bp_subrc = 1.
EXIT.
ENDIF.
ENDFORM.
where you must create your own message ZVL in SE91 or other.
Other suggestion is set a warning message in copy rules, and set the error message when you save it (think that it could be modify in a future). So use the USEREXIT_SAVE_DOC_BEFORE_PREP
Purpose
This routine can be used for the final change of all delivery data. At the
time of the call, the delivery is complete and consistent; only the
document number has not yet been determined in the creation case and the
final processing of the requirements has not yet taken place. Therefore,
changes to the delivery at this time must be made with particular care
because no subsequent checks can prevent possible data inconsistencies.
Since requirements processing has not yet occurred, this user exit is, in
particular, suitable for changes relevant for requirements when the
delivery is saved.
Remeber to avoid messages during PGI. As it says:
Display of messages
With the output of messages or user dialogs, you must make sure that this
exit can be run both in the dialog and in the background. In particular,
during goods issue posting, messages or user dialogs must never be output
because this may result in incorrect material documents.
Regards
Eduardo
Edited by: E_Hinojosa on Nov 14, 2011 12:14 PM -
Adding Custom fields to VL02N...very urgent
Hi Friends,
I have come up with a requirement, where i need to add 2 custom fields namely "EOD INDICATOR and FREIGHT AMOUNT" in a customized additional tab at the header level in VL02N transaction.I need to update the freight amount in the deliveries that are picked up by a report program where, the shipment number and the freight cost are the inputs. The problem is that, how to update the data in the delivery through VL02N and database.
I found a BAPI, named "BAPI_OUTB_DELIVERY_CHANGE", where in at the header data we dont have fields for the custom fields i stated above. I want to know, how to enhance a BAPI, so that we can update the data for the outbound delivery and the database.
In the BAPI, in tables I found EXTENSION1 and EXTENSION2 tables. Can I use these tables to update my fields?
Let me know the way, like how to go ahead to update the customized fields in tcode using BAPI or some other way as soon as possible..it's very urgent..
Thanks in advance..
--sudha
Edited by: sudha koduri on Jul 3, 2008 2:58 PMCheck this thread:
https://forums.sdn.sap.com/click.jspa?searchID=6422849&messageID=392261 -
How 'Assignment' is updated using VL02N transaction ?
Hi Experts,
I want to know how and where in the program SAPMV50A, the 'assignment' field is updated when I post a GI document using VL02N transaction.
The filed for assignment is ZUONR of BSEG table. I want to know how the ZUONR field is updated while VL02N transaction is used to post a GI document.
Please help me asap.
Thanks & regards
Sanglap Ghosh
Edited by: sanglap_ghosh581 on Mar 10, 2010 10:18 AM
Edited by: sanglap_ghosh581 on Mar 10, 2010 10:20 AMDid you find a solution for this? I have the same requirement.
-
My Sites "Updating values in this field is disabled temporarily"
Managed metadata is configured and I am able to access and add terms, etc. I am able to go to the User Profile Service in Central Admin and update the managed metadata fields such as "Ask Me About", "Past Projects", "Skills",
etc. However, when I go to the My Site host and try to edit my profile there, I get the error:
There was a problem retrieving data for this field. Updating values in this field is disabled temporarily. You can still update values in other fields.
Managed Metadata Service is available:
I am able to go to the Managed Metadata service in Central Admin, add terms, etc.
Service Connection settings:
Checked - This service application is the default storage location for Keywords
Checked - This service application is the default storage location for column specific term sets
Editing profile from My Site host:
Ask me About: There was a problem retrieving data for this field. Updating values in this field is disabled temporarily. You can still update values in other fields.
Edit the same profile in Central Admin works fine:
Ask Me About: No error, able to add data.
All the solutions for this error that I have been able to find are not working, but they are for when the managed metadata service is inaccessible, or the fields cannot be updated in Central Admin either. I've recreated both the User Profile
service and the Managed Metadata service. Any ideas?
ThanksHi tammylj,
Based on your description, you should use the different service accounts for your CA web application and MySite host site web application, since "Ask Me About" is working for CA but not for MySite host site, the service account for MySite may not read
and write managed metadata term store.
please check and make sure your MySite web application service account is added in the Managed Metadata service application with permission "Read Access to Term Store" and "Read and Restricted Write Access to Term Store", then it should work.
http://james-brennan.co.uk/2011/10/19/failed-background-check-when-the-managed-metadata-service-says-no/
Thanks
Daniel Yang
TechNet Community Support -
CSOM: Update the IsLockedByManager task field
Hi,
I have a request from a Customer: he need to automatically Lock Tasks for Updates, depending on some conditions (mainly based on the "age" of te task. The Customer is hosted in Project Online.
My idea was to create a task boolean field, with a formula:
true if the task has to be locked
false otherwize
A daily batch written as a C# application will run everynight, and set the IsLockByManager field to true, for the selected task.
I've written a first proto, and it does not work: it seems that this field cannot updated, even if it is writtable. I tried to update some other tasks field (like IsManual, or IsActive), and for those fields, it works.
Is this behaviour normal ? Does anybody there already experienced this problem ? I enclose below a part of my code. Thank you for your help.
Sylvain
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Microsoft.ProjectServer.Client;
using Microsoft.SharePoint.Client;
//using NeosSDI.ProjectOnline.Business;
namespace NeosSDI.ProjectOnline.CSOM
public class LockTasks
static void Main(string[] args)
ConsoleColor initialColor = Console.ForegroundColor;
try
// First, very simple: list Projects, and their tasks
var projectContext = ProjectCSOMManager.ReadProjects();
ProjectCSOMManager.LockNonActiveTasks(projectContext.Projects);
catch (Exception ex)
Console.WriteLine("Press a key...");
Console.ReadLine();
public static ProjectContext ReadProjects()
try
projContext = new ProjectContext(PwaPath);
projContext.ExecutingWebRequest += ClaimsHelper.clientContext_ExecutingWebRequest;
// Use IncludeWithDefaultProperties to force CSOM to load the Tasks collection, otherwize we have a (very) lazy loading
// Careful: the Load method does not perform the Load ! It prepare the context before the ExecuteQuery is run.
projContext.Load(projContext.Projects,
c => c.Where(p => p.Name == "Project 1").IncludeWithDefaultProperties(pr => pr.StartDate, pr => pr.FinishDate, pr => pr.Tasks));//.Where(t=>t.Name=="Project 2 - T1")));
// Actual execution of the Load - AFter this method, the Projects collection contains data, and the properties which are specified below.
projContext.ExecuteQuery();
catch (Exception ex)
throw ex;
return projContext;
public static void LockNonActiveTasks(ProjectCollection projects)
foreach (var p in projects)
if (!p.IsCheckedOut)
DraftProject dp = p.CheckOut();
projContext.Load(dp.Tasks, dt => dt.IncludeWithDefaultProperties(lt => lt.Name));
projContext.ExecuteQuery();
foreach (var t in dp.Tasks)
// With IsActive, it works
// t.IsActive = false;
// With IsLockedByManager, it doesn't work
t.IsLockedByManager = true;
// Récup le job qui sort d'Update
var job = dp.Update();
var js = projContext.WaitForQueue(job, 10);
job = dp.Publish(true);
js = projContext.WaitForQueue(job, 10);
projContext.ExecuteQuery();Hi,
To give an update of this question, I managed this problem differently: the
IsLockedByManager field has really no effect on the task. For DraftTask, this field is writtable, but the change is not taken into account, and not saved (bug or undiscovered function)...
Instead of a batch, I created a macro in Project Pro: on the Save event, the macro tests the status of a custom field.
Depending of this field, I update the Publish field of the task. The macro is integrated in the Entreprise Global, to make its deployment easy for all the users.
This macro is based on a post at this adress: thanks to its author :)
http://www.applepark.co.uk/automatically-setting-the-task-publish-field-to-no/
Private Sub Project_BeforeSave(ByVal pj As Project)
SetPublishField
End Sub
Sub SetPublishField()
Dim Temp As Long
Dim Tsk As Task
Dim TaskField As Long
Dim IsTaskToLock As String
For Each Tsk In ActiveProject.Tasks
' check to see if a task exists
If Not Tsk Is Nothing Then
' check to see if the task is external or a summary
If Not (Tsk.ExternalTask Or Tsk.Summary) Then
TaskField = FieldNameToFieldConstant("MY LOCK FIELD", pjTask)
IsTaskToLock = Tsk.GetField(TaskField)
If IsTaskToLock = "Oui" Then
Tsk.IsPublished = False
Else
Tsk.IsPublished = True
End If
End If
End If
Next Tsk
End Sub -
Hi everybody,
I'm trying to develop a trigger-based solution for a project involving received messages from an MQ queue.
The messages are all inserted from the queue into a single staging table. (v10.2.0.4)
Each message's data will need to be either inserted or updated to a destination table based upon a field's value in the staging table.
I was planning on putting a trigger on the staging table and calling an insert or update procedure based on the staging field's value.
The inserts are pretty straightforward.
It's the updates that I'm struggling with - some of the staging fields will be populated, others will be empty. There is no pattern to which fields will or will not be populated.
I do not want to update the destination table with empty fields - I only want to update fields that contain data.
Is there an better way than several "if-then check for empty, then update" (one for each field)?
Maybe some sort of magical dynamic update?
Any help is greatly appreciated.
Thanks in advance!Hi,
You can use the NVL function (or COALESCE), which returns the first of its arguments that is NOT NULL.
Instead of:
UPDATE dest
SET column_a = x
, column_b = y
WHERE id = z;say
UPDATE dest
SET column_a = NVL (x, column_a)
, column_b = NVL (y, column_b)
WHERE id = z;If x IS NOT NULL, then NVL (x, column_a) will return x.
If x IS NULL, then NVL (x, column_a) will return column_a
You could also automate this in a BEFORE UPDATE trigger:
:NEW.column_a := NVL (:NEW.column_a, :OLD.column_a);
:NEW.column_b := NVL (:NEW.column_a, :OLD.column_b);but if you do, you'll have to disable the trigger to correct mistakes that really should be NULL. -
HI..Gurus,
How RG1 reg Update? Wt is the T.Code for that. ?What are the pre-requisites that are needed.?
regards,
jyothi.Hi Jyothi
The sequence is like this:
1. In SE16, enter Table name: J_2IRG1BAL, and click on Create. Enter the material Number and 'P' in Material form (Loose/Pack indicator) and click 'Save'. This step is to be done only for the first time.
2. Do your Initial Stock entry in MB1C, movement type 561
2. Go to J1I5, select Posting Date, Document Year and 'ROP in Classification (Receipt from outside under any other provision). Click on Create icon (Register entry)
4. Go to J2I5 and extract the RG1 Register. You must get a green checkmark.
5. After doing the PFI, go to J1I5, select Posting Date, Document Year and Classification 'IDH' (For domestic sales) or 'IDE' if the first removal is for Export Sale. Based on the accounting document generated during PGI (MB03) the RG1 Register gets updated with the removal for Outbound Delivery.
6. Reextract the RG1 register in J2I5. You must get a green checkmark.For the RG1 Register printout, go to J2I6, select the option, 'Script Form' and hit 'Execute.
All this was in OSS Note: 373001.
Ramana ND
PS: You must have maintained the Number range Object J_1IRG1 (RG1 Register) -
Updation of INPUT Request fields in PI sheet automatically from xMII system
Hi,
We are getting the consumption data(Material Weight and Batch) from xMII in SAP browser based PI sheet through Z function module as a parameters .These values needs to updated automatically in PPPI_INPUT-REQUEST fields (PPPI_MATERIAL_CONSUMED & PPPI_BATCH),so that PI_CONS(Consumption) process message will be created automatically.
We are facing problem to update the input request fields(PPPI_MATERIAL_CONSUMED and PPPI_BATCH) automatically in Browser based PI sheet.
Can you please help us out to populate the input request fields automatically in PI sheet to automate the xMII with SAP PI sheet. I can provide the screen shots of PI sheets and configuration of process management if required.
Thank you
Warm Regards
Darga AliHello Udayan,
The issue is in SAP PI Sheet.
We are getting the data from xMII into variables through function module and able to populate these values in PI sheet,But we need to update these values directly in input request fields ,so that it will create a process message and updated the process order with material consumption data.
Is there any functionality available in xMII ,to update the vaules directly in input request fields in PI sheet.
Thank you
Warm Regards
Darga Ali -
Updation of Primary Key field in HR Tables (PA2001 and PA2002) - Urgent
Can anyone please tell me how to update a primary key field in HR Tables (PA2001 and PA2002).
I need to update sprps field in both the tables. I used HR_Infotype_Operation function module, but still it is not updating the field.
Pls find the following code snippet for the table PA2001 and let me know if any discrepancies :
TABLES: pa2001.
DATA: it_pa2001 TYPE TABLE OF pa2001,
wa_pa2001 LIKE LINE OF it_pa2001,
DATA: date TYPE d.
date = sy-datum - 100.
SELECT pernr sprps begda endda FROM PA2001 INTO CORRESPONDING FIELDS OF TABLE it_pa2001
WHERE begda BETWEEN date and sy-datum.
WRITE:/.
WRITE:/ 'PA 2001 Records'.
if sy-subrc <> 0.
WRITE:/ 'No Data Exists'.
else.
LOOP AT it_pa2001 INTO wa_pa2001.
WRITE:/ wa_pa2001-pernr, wa_pa2001-sprps, wa_pa2001-begda, wa_pa2001-endda.
ENDLOOP.
endif.
LOOP AT it_pa2001 INTO wa_pa2001.
wa_pa2001-sprps = 'X'.
CALL FUNCTION 'HR_INFOTYPE_OPERATION'
EXPORTING
infty = '2001'
number = wa_pa2001-pernr
SUBTYPE =
OBJECTID =
LOCKINDICATOR =
VALIDITYEND =
VALIDITYBEGIN =
RECORDNUMBER =
record = wa_pa2001
operation = 'MOD'
TCLAS = 'A'
DIALOG_MODE = '0'
NOCOMMIT =
VIEW_IDENTIFIER =
SECONDARY_RECORD =
IMPORTING
RETURN =
KEY =
ENDLOOP.
if sy-subrc = 0.
write:/ 'SY-subrc is zero'.
write:/ ' Rows modified = ', sy-dbcnt.
else.
write:/ 'No Record(s) updated'.
endif.
commit work.
WRITE: / 'Updated Records in the Internal Table IT_PA2001'.
SELECT pernr sprps begda endda FROM PA2001 INTO CORRESPONDING FIELDS OF TABLE it_pa2001
WHERE begda BETWEEN date AND sy-datum..
LOOP AT it_pa2001 INTO wa_pa2001.
WRITE:/ wa_pa2001-pernr, wa_pa2001-sprps, wa_pa2001-begda, wa_pa2001-endda.
ENDLOOP.Thanks Kiran.
But I need to change this field as we need to lock the records, as soon as the employee fills his/her time sheets which will be sent for HR Payroll, later on.
When I am updating directly the field the database table PA2001, its not updating but for table PA2002, only few records are being updated.
Is there any other alternative for this problem?
Pls reply.
Thanks,
Harish -
In LIKP, which field indicated that this order is an inbound delivery or ob
Hi,
In LIKP, which field indicated that this order is an inbound delivery or obound delivery...
Thanks!well LFART
del type wld do it mate.
thanks -
Prob with Updation of Primary Key field '' SPRPS '' in PA2001. Plz HELP
Can anyone please tell me how to update a primary key field in HR Tables (PA2001 and PA2002).
I need to update sprps field in both the tables. I used HR_Infotype_Operation function module, but still it is not updating the field.
Pls find the following code snippet for the table PA2001 and let me know if any discrepancies :
TABLES: pa2001.
DATA: it_pa2001 TYPE TABLE OF pa2001,
wa_pa2001 LIKE LINE OF it_pa2001,
DATA: date TYPE d.
date = sy-datum - 100.
SELECT pernr sprps begda endda FROM PA2001 INTO CORRESPONDING FIELDS OF TABLE it_pa2001
WHERE begda BETWEEN date and sy-datum.
WRITE:/.
WRITE:/ 'PA 2001 Records'.
if sy-subrc <> 0.
WRITE:/ 'No Data Exists'.
else.
LOOP AT it_pa2001 INTO wa_pa2001.
WRITE:/ wa_pa2001-pernr, wa_pa2001-sprps, wa_pa2001-begda, wa_pa2001-endda.
ENDLOOP.
endif.
LOOP AT it_pa2001 INTO wa_pa2001.
wa_pa2001-sprps = 'X'.
CALL FUNCTION 'HR_INFOTYPE_OPERATION'
EXPORTING
infty = '2001'
number = wa_pa2001-pernr
SUBTYPE =
OBJECTID =
LOCKINDICATOR =
VALIDITYEND =
VALIDITYBEGIN =
RECORDNUMBER =
record = wa_pa2001
operation = 'MOD'
TCLAS = 'A'
DIALOG_MODE = '0'
NOCOMMIT =
VIEW_IDENTIFIER =
SECONDARY_RECORD =
IMPORTING
RETURN =
KEY =
ENDLOOP.
if sy-subrc = 0.
write:/ 'SY-subrc is zero'.
write:/ ' Rows modified = ', sy-dbcnt.
else.
write:/ 'No Record(s) updated'.
endif.
commit work.
WRITE: / 'Updated Records in the Internal Table IT_PA2001'.
SELECT pernr sprps begda endda FROM PA2001 INTO CORRESPONDING FIELDS OF TABLE it_pa2001
WHERE begda BETWEEN date AND sy-datum..
LOOP AT it_pa2001 INTO wa_pa2001.
WRITE:/ wa_pa2001-pernr, wa_pa2001-sprps, wa_pa2001-begda, wa_pa2001-endda.
ENDLOOP.Thanks Kiran.
But I need to change this field as we need to lock the records, as soon as the employee fills his/her time sheets which will be sent for HR Payroll, later on.
When I am updating directly the field the database table PA2001, its not updating but for table PA2002, only few records are being updated.
Is there any other alternative for this problem?
Pls reply.
Thanks,
Harish
Maybe you are looking for
-
Why is it that the remote app changes the song order on my playlists from iTunes? This is so irritating.
-
we have followed the buidling block C04 to set up the ITS. somehow, when we call a win gui ABAP Report in CRM Web Client, the transaction launcher shows the win gui heading and title. but then soon it goes back to the home page and pops up another wi
-
Hi fellows!! I would like to ask please, if there's any way which allow me to draw an arbitrary line with the pencil tool for instance, and then tell to flash to use this path as a motion path for an object on the stage by creating a motion tween.
-
Failed to install patch 8487427 for EBS 12.1.1
Hi, I have a problem installing the patch 8487427 for EBS 12.1.1 the install log is: Time is: Tue Nov 22 2011 13:09:50 FAILED: file MTH_PROD_MTL_CONSUMED_STG.xdf on worker 2 for product mth username APPS. Time is: Tue Nov 22 2011 13:09:51 FAILED: fil
-
Reject Oracle iExpense Report through WF_NOTIFICATION.SetAttrText
Dear Gurus, I have a huge number of iExpense Reports which are pending for the user approval. I am using the following code to Reject all such reports: begin wf_notification.setattrtext ( nid => :notification_id , anam