SERIAL NUMBER-TRANSACTION NOTIFICATION

Dear Experts,
I have created a UDF under the serial number form.
I would like to validate a transaction let say a Sales Return if the user doesn't populate the UDF with data.
Below is the query i had done but it doesn't work, it firing even after the UDF has data. Please let me know where i am going wrong.
IF @transaction_type IN ('A','U') AND @object_type = '16' and @error = 0
BEGIN
IF EXISTS (SELECT T0.DocEntry  from ORDN T0 inner join RDN1 T1 on T0.DocEntry=T1.DocEntry
inner join SRI1 I1 on (T1.DocEntry=I1.BaseEntry and T1.ObjType=I1.BaseType)
inner join OSRN T4 on  I1.SysSerial=T4.SysNumber WHERE  T0.DocEntry = @list_of_cols_val_tab_del  AND T4.[U_Primary_Code] IS NULL)
BEGIN
SELECT @Error = 2, @error_message = 'Error'
END
end
Regards,

Hi Nagarajan K ,
I have tried your code but it is still returning an error even after the filled is populated. See attached screen shots.
Error 1-Add or Update Sales Return Doc.pngGetting an error even when the filed is populated for the document being posted.
Filled Already Populated.pngShows the serial number has this info already.
transaction in SQL with 2 Entries.pngWhen i run the query in SQL i get 2 entries one with null value and other without.
Thanks for your assistance.
Regards

Similar Messages

  • Serial Number Transaction Report export to excel but serial not exported

    Hi Experts,
    I'm trying to export Serial Number Transaction Report to excel in a client database (SP00 PL47). Basically, the report has two screen, the Serial Number (Top) and Transactions for Serial Number (Bottom). When I try to export it, it only export the Transaction for Serial Number. We Need the serial number to be exported, how do we go about this? I tested same database on SP01 PL07 and exported the Serial Number and  Transactions for Serial Number. Why is it working in other database, do we have settings that we need to configure?
    Regards,
    Sai

    Hi Don,
    In the serial number transaction report, when you click on the excel tab the Save as window will open just cancel the first window there is onther window opened, just save that window under the other name e.g. 123.
    because both the window has same name.
    Then check the excel file.
    Regards,
    Datta Kharat

  • Serial number transaction report

    Hi,
    Where do I find Serial number transaction report?
    Do any one know t.code or program name?
    I am unable to locate following menu path,
    Inventory >>> Inventory Report >>> Serial Number Transaction Report
    Please some one guide me.
    Thanks and Best Regards,
    Mohan

    Try using tcode OIYH: Serial Number List
    Thanks & Regards
    JP

  • Serial Number Transaction Report Window isn't opening when adding AR Invoice

    Hi,
    For One of my Client the Serial Number Transaction Report Window is not opening when adding the AR Invoice.
    In the Invoice all the item's that is present in the line level are SERIAL MANAGED and Management Method is ON RELEASE ONLY.
    Why is it so?

    Hi,
    Do you receive any error message? Is it possible to add without selecting invoice without selecting serial number?
    What is your B1 version and PL?
    Thanks & Regards,
    Nagarajan

  • Batch/Serial Number Transaction Report

    when we created A/R Invoice or Return..we can see its Batch/Serial Number transaction report..in which table the barcode is saved?
    i need this table because i want to create 'Reverse' transaction for it, so we can reconcile it and make new transaction with 'correct' value..
    thx,
    erick

    Hello Eric,
    BarCode is stored in OITM table, Field Name: CodeBars.
    You can join the OIBT, IBT1 (Batches) and OSRI, SRI1  (Serial Numbers) tables into OITM table to get the transaction report.
    Outgoing batches and serials are stored in the IBT1 and SRI tables, so it is enought to join them into the OINM view (table)
    In 8.8 Views has been created for IBT1 and SRI1 tables.
    If the items by Delivery note. In this case the delivery note is the key for the serials/batches transaction report. You may create a short development for displaying them in the invoice.
    You may read the following blog to understand the basic queries and use them in practice
    /people/janos.nagy/blog/2010/06/18/displaying-serial-numbers-batch-details-on-invoice-part-ii
    So basics: (2007 and also 8.8)
    Bacthes related to Invoices
    SELECT T0.[BatchNum] , T1.[Quantity] , case when T0.[ExpDate] is null then '' else convert(nvarchar,T0.[ExpDate],102) end, T2.CodeBars  FROM OIBT T0 INNER JOIN IBT1 T1 ON T0.ItemCode = T1.ItemCode and T0.WhsCode = T1.WhsCode   and T0.BatchNUm = T1.BatchNum inner join OITM T2 on T0.ItemCode = T2.ItemCode  WHERE
      T1.[BaseType] = '13' and
      T1.[BaseEntry] = [INVOICE_DOCENTRY]
    Serial numbers:
    SELECT T0.[IntrSerial], T2.CodeBars FROM OSRI  T0 INNER JOIN SRI1 T1 ON T0.ItemCode = T1.ItemCode and T0.SysSerial = T1.SysSerial inner join OITM T2 on T0.ItemCode = T2.ItemCode WHERE  T1.[BaseType] = '13'  and T1.[BaseEntry] =[YOUR_INVOICE_DOCENTRY]
    Regards
    János Nagy

  • About adding UDFs for serial number transactions

    Hi,
    For some reasons, I need add some UDFs when receivie product or delivery product which are managed by serial number. In UDFs management, I found there is one object called Serial/Batch number object. I add my UDFs under this object then when I go inside serial number transaction report, I can see the new added UDFs. But my question is when I use DI to add goods receipt to receive serial number into system, I can't see the UserFields property. Below is the code I use:
                // Lines + Serial Number
                oDoc.Lines.SerialNumbers.ManufacturerSerialNumber = "LANSN0007";
                oDoc.Lines.SerialNumbers.UserFields.Fields.Item("U_MyUDF01").Value = "XXXXX";
                oDoc.Lines.SerialNumbers.Add();
    In above code, there is no way to set the UDFs like usual. There is no property called UserFields under SerialNumber. So how I can set the value in the UDF then? Or I am using wrong way to add value in the UDFs?
    Any idea?
    Thanks,
    Lan

    Hi nd.Q,
    My version is 8.80.235 with PL:17. But in object of SAPbobsCOM.Documents.Lines.SerialNumbers, I can't find the property UserFields which allow you to set the your UDFs value as usual. In SDK help document, I can't find the UserFields property in SerialNumbers object. In my code I can't use code like this:
    oDoc.Lines.SerialNumbers.UserFields.Fields.Item("U_XXX").Value = "XXX";
    Any idea?
    Thanks,
    Lan

  • SAP WM-RF 'Serial Number' Transaction LM80 - How does it work?

    Hi gurus
    We are looking at using the standard SAP RF transaction 'LM80' - 'Serial number capture'
    Does anyone have any experience with this transaction?  How does it work and what is the process flow?
    Cheers
    Eddy

    Hi
    Please advise if this is the process others are using for LM80:
    1. Create STO or Sales Order
    2. Create Delivery
    3. Create Warehouse Transfer Order
    4. Pick/Confirm Warehouse Transfer Order
    5. Scan serial numbers to completely picked delivery via LM80
    6. Post Goods Issue
    My question is:  is there a way to 'pick' via serial numbers?  The process would then be that you scan in serial numbers during picking
    kind regards
    Ed

  • Goods Issue ./ Serial Number Report

    Guys,
    I want to create a report which gives me the Goods Issue details with the items in the goods issue and Serial Numbers processed in those particular goods issues.
    The problem is that with the following coding, it is returning all the Serial Numbers related to the particular item available in SAP and not only those relating to that particular Goods Issue.  So if I have a quantity of 2 Serial Numbers for one item, it is not returning to Serial Numbers for that Goods Issue, but it is returning all Serial Numbers of the System under that Item.
    I suspect that it is a JOIN problem, what do you think?
    Coding is:
    Select
                        T0.DocDate as 'Goods Issue Date'
    ,                    T0.DocNum as 'Goods Issue Reference'
    ,                    T1.ItemCode as 'Item Code'
    ,                    T1.Dscription as 'Item Description'
    ,                    T2.IntrSerial as 'Serial Number'
    ,                    T1.OcrCode as 'Cost Centre'
    ,                    T1.LineTotal as 'Total Cost'
    ,                    T1.U_eReasonCode as 'Reason Code'
    ,                    T0.Comments as 'Remarks'
    From
                        OIGE T0 JOIN IGE1 T1 ON T0.DocEntry = T1.DocEntry
                                  LEFT OUTER JOIN OSRI T2 ON T1.ItemCode = T2.ItemCode
    Order By
                        T0.DocNum
    Many thanks for your work everyone.
    Regards,
    Vankri

    Hi,
    You can go to Inventory >>> Inventory Report >>> Serial Number Transaction Report. There are a lot of criteria you can choose to generate your own report.
    In your case, choose Dates and Documents tab and then enter your criteria.
    Hope this helps,
    Son.

  • Serial number inquiry

    I am looking for the quickest way to view the transaction history of a specific serial number.  For example I want to see the PO no., Rcpt no., Invoice no., etc...
    The serials number management report basically provides the data I want, but in the Selections Criteria window Numberings tab the serial number from/to doesn't have a lookup function.  Is this window my only or best option?

    You can set one or more  FS to the Serial Number Transaction Report - Selection Criteria window and select from the list provided by the FS. E.g. to the Serial Number From and To field you can connect this FS:
    SELECT IntrSerial From OSRI Where ItemCode=$[OSRI.ItemCode]

  • Serial Number marked as available

    Our client has 1 item in stock, however when we run the serial Number transaction report it show that there are 2 serial items available for selection.
    How do we remove the additional serial number?

    Dear Mr West,
    I assume you are working with a 2007 version or previous. In this case, please run the select query related to the serial numbers that you can find in note n. 1250867. It is in the attachments.
    If the query retrieve results, please create a message on the portal and we will process it.
    If the query does not give you any results, it means that the database is correct.
    In this case the extra serial number can be related to another warehouse. Is there any quantity left in stock in other warehouses?
    Regards,
    Marcella Rivi
    SAP Business One Forums Team

  • DTW -- UDF does not appear in Serial Number

    Hi All,
    I am trying to update a UDF in serial number transaction table for GR PO. I have prepared a template where I have added a column at the end with the name of the column as defined in database. when I map these fields in DTW, I dont find this UDF in the list of serial number's columns. when I map the document header (GR PO), I am able to see the UDF of OPDN table but that does not happen for Serial number's mapping. any idea??? I am using 2005 B PL 44.
    thanks,
    Binita

    Hi Peter,
    thanks for the reply. I am using the third template viz SerialNumbers.xlt  only for updating UDFs in serial number's transaction table (OSRI). and all the default fields appear in the list while mapping which are there in the template. also the UDF column which I have added in the template does appear in the list on the left side (source fields)   but it does not appear on the right side (Target fields). so I have nothing to map it against.
    any idea?
    thanks,
    Binita

  • RE:BAPI for Create Material Serial Number

    Can anybody please suggest me any function module or BAPI available to Create Material Serial Number (transaction IQ04), and later Change Material Serial Number (transaction IQ02) for updating its class type, class and characteristic description?

    Hi,
    Two options for creating meters, meter serial number
    - FM: EQUIPMENT_SAVE - It is too trickly to use this FM, one has to do lot of research and should have good technical skills
    - Using BDC - simple and straigh.
    For updating class for the meter you can use FM: BAPI_OBJCL_CREATE (BDC does not work for this one). Again it is pretty complex to implement.
    For created meters, i have used both FM and BDC. Decision depends on requirement, volume and resource.
    - ASB

  • Serial number not showing on delivery or invoice

    Hello I am trying to get serial numbers to print out on Delivery and Invoices.  According to Suda in a prior thread (Serial Number on the Delivery Challan) this is suppose to happen automatically in 2007 versions of SBO.  I have created a test item (serial numbers setting "On Every Transaction"), rcvd the item and assigned it a serial number. 
    I then input a Delivery for the test item and printed it to the screen (draft) before posting it via the "Add" button.  The draft did not show the serial number.  I did the same for an invoice using the test item and again the serial number did not show on the draft invoice. 
    What step am I missing to get the serial number to print on the delivery and invoice?
    What is required to get the serial number to print out on other forms such as credit memos and sales returns?

    Hi
    You are right . So far some other thread has been generated also before identifying same issue .
    The option you have :
    1. Administration --System initialisation -print preference >AR Invoice
    However , if you want to bring it your serial number in one invoice , you probably need to customise your PLD .
    2. AR invoice donot show serial number at row level because serial number is stored in different table .
    Right click on AP invoice with serial number  and Serial number  transaction report or By menu bar  Goto -->Serial Number and transaction report .
    Hope this will narrow down what you are looking for
    Thank you
    Bishal

  • How to get a service notification number for given serial number

    Please, someones know how to get a service notification number based on serial number.
    In our process the notification can be created as first step (IW51) or can be created starting from service order (IW32).
    Thanks in advance.
    Luca

    Hi pooja,
    actually standard service request numbers are configured in spro->crm->transactions->Settings for Service Requests->Number Ranges. here they are maintain service request,incident,problem number ranges..
    so when ever your creating any service request then that number range will appear in that object id.
    you have to get that object id in your custom field get_method and based on that you have to change your number..
    example:
    current = me->bo.
    current->get_property_as_string( EXPORTING iv_attr_name  = 'OBJECTI_ID'  RECEIVING rv_result  = lv_id ).
    here you will get object_id based on that you have to write your own logic to display custom value.
    " write your custom logic to populate custom field. pass that custom field value into returning parameter.
    value = custom_value.
    Thanks & Regards,
    Srinivas.

  • IB:How to update a serial Number which has Inventory Material Transactions?

    Dear friends
    first of all thanks for your time and valuable solutions
    Install base: How to update a serial Number which has Inventory Material Transactions
    problem description:
    Install base > quick search
    Here is Installbase record, when I query from quick search
    Rec#     Item          Item Instance           Serial Number          Status
    1     300-7000-01      3000000           1000XXX-0538JQ0003 Return for Adv Exchange
    2     300-7000-01     8000000               1000XXX-0538JQ0003-     Return for Adv Exchange
    3     300-7000-01     5000000               1000XXX-0538JQ0003-A     Return for Adv Exchange
    looking above data, first and third records are the legitimate serial numbers(correct according to the client specs), second record is not legitimate since it has a dash as suffix, we found there are many illegitimate serial Numbers exists, needs to be updated with the right serial Numbers which I analyzed in excel after pulling data from mtl_material_transactions , oe_order_lines_all , mtl_serial_numbers , mtl_system_items_b
    basically these are all RMAs
    I need to update the second record as 1094SUZ-0538JQ0003-B as per the guidelines, while updating I need to keep all the existing contracts, Warranty, what ever material transations it has, need to be same.
    we have a package updating the serial numbers using IB API (csi_Item_Instance_Pub.update_item_instance) but it is updating only the records which has no serial numbers present for that instance, if there is a serial number already exists it is not working.
    user define error msg "Serial Number 1094SUZ-0538JQ0003- has Inventory Material Transactions. This serial number cannot be used to update an existing Item Instance", but I need to update this anyway!! or am I missing something here, please advice me
    below post looks like similar issue, talks about hard update, I have no clue, by doing that the updated serial number will have same transations, contracts, dates....attached to it like the previous serial number
    IB UPDATE_ITEM_INSTANCE ERROR - doesn't allow ACTIVE_START_DATE to change
    would be great If you guys help me out, really appreciated!!
    unfortunately I couldn't find any solutoin in metalink for the existing serial number update
    code for updating the serial number using IB API
              x_msg_count := 0;
    x_msg_data := '';
    p_instance_rec.instance_id := rec.child_instance_id;
    p_instance_rec.serial_number := rec.child_serial_number;
    p_instance_rec.object_version_number := rec.child_object_number;
    p_txn_rec.transaction_id := Fnd_Api.g_miss_num;
    p_txn_rec.transaction_date := SYSDATE;
    p_txn_rec.source_transaction_date := SYSDATE;
    p_txn_rec.transaction_type_id := 1;
    csi_Item_Instance_Pub.update_item_instance
    p_api_version => 1.0,
    p_commit => Fnd_Api.g_false,
    p_init_msg_list => Fnd_Api.g_false,
    p_validation_level => 1,
    p_instance_rec => p_instance_rec,
    p_ext_attrib_values_tbl => p_ext_attrib_values_tbl,
    p_party_tbl => p_party_tbl,
    p_account_tbl => p_account_tbl,
    p_pricing_attrib_tbl => p_pricing_attrib_tbl,
    p_org_assignments_tbl => p_org_assignments_tbl,
    p_asset_assignment_tbl => p_asset_assignment_tbl,
    p_txn_rec => p_txn_rec,
    x_instance_id_lst => x_instance_id_lst,
    x_return_status => x_return_status,
    x_msg_count => x_msg_count,
    x_msg_data => x_msg_data
    Thanks
    Suri

    Suri
    Used this. May not be perfect but should get you there. Only if the table is registered (all the seeded tables should be registered) this will work.
    select distinct a.table_name,b.column_name from fnd_tables a, fnd_columns b
    where a.table_id=b.table_id
    and upper(b.column_name) like '%SERIAL%'
    Also this is very old one but if you need history for this change add the history insert logic as well..
    DECLARE
    l_return_err VARCHAR2 (80);
    PROCEDURE debug (p_message IN VARCHAR2)
    IS
    BEGIN
    dbms_output.put_line (SUBSTR (p_message, 1, 255));
    END debug;
    BEGIN
    debug('======================================================================');
    debug('Switching from serial number XDT07406. to XDT07406 ');
    debug('======================================================================');
    UPDATE fa_additions_b
    SET serial_number = 'XDT07406'
    WHERE serial_number = 'XDT07406.';
    debug('No of rows in fa_additions_b updated :'||sql%rowcount);
    UPDATE fa_mass_additions
    SET serial_number = 'XDT07406'
    WHERE serial_number = 'XDT07406.';
    debug('No of rows in fa_mass_additions updated :'||sql%rowcount);
    UPDATE rcv_serial_transactions
    SET serial_num = 'XDT07406'
    WHERE serial_num = 'XDT07406.';
    debug('No of rows in rcv_serial_transactions updated :'||sql%rowcount);
    UPDATE mtl_serial_numbers
    SET serial_number = 'XDT07406'
    WHERE serial_number = 'XDT07406.';
    debug('No of rows in mtl_serial_numbers updated :'||sql%rowcount);
    UPDATE mtl_unit_transactions
    SET serial_number = 'XDT07406'
    WHERE serial_number = 'XDT07406.';
    debug('No of rows in mtl_unit_transactions updated :'||sql%rowcount);
    UPDATE csi_item_instances_h
    SET new_serial_number = 'XDT07406'
    WHERE new_serial_number = 'XDT07406.';
    debug('No of rows in csi_item_instances_h updated :'||sql%rowcount);
    UPDATE csi_t_txn_line_details
    SET serial_number = 'XDT07406'
    WHERE serial_number = 'XDT07406.';
    debug('No of rows in csi_t_txn_line_details updated :'||sql%rowcount);
    UPDATE csi_item_instances
    SET serial_number = 'XDT07406'
    WHERE serial_number = 'XDT07406.';
    debug('No of rows in csi_item_instances updated :'||sql%rowcount);
    UPDATE wsh_delivery_details
    SET serial_number = 'XDT07406'
    WHERE serial_number = 'XDT07406.';
    debug('No of rows in wsh_delivery_details updated :'||sql%rowcount);
    debug('======================================================================');
    debug('Switching from serial number jct20591 to JCT20591 ');
    debug('======================================================================');
    UPDATE fa_additions_b
    SET serial_number = 'JCT20591'
    WHERE serial_number = 'jct20591';
    debug('No of rows in fa_additions_b updated :'||sql%rowcount);
    UPDATE fa_mass_additions
    SET serial_number = 'JCT20591'
    WHERE serial_number = 'jct20591';
    debug('No of rows in fa_mass_additions updated :'||sql%rowcount);
    UPDATE rcv_serial_transactions
    SET serial_num = 'JCT20591'
    WHERE serial_num = 'jct20591';
    debug('No of rows in rcv_serial_transactions updated :'||sql%rowcount);
    UPDATE mtl_serial_numbers
    SET serial_number = 'JCT20591'
    WHERE serial_number = 'jct20591';
    debug('No of rows in mtl_serial_numbers updated :'||sql%rowcount);
    UPDATE mtl_unit_transactions
    SET serial_number = 'JCT20591'
    WHERE serial_number = 'jct20591';
    debug('No of rows in mtl_unit_transactions updated :'||sql%rowcount);
    UPDATE csi_item_instances_h
    SET new_serial_number = 'JCT20591'
    WHERE new_serial_number = 'jct20591';
    debug('No of rows in csi_item_instances_h updated :'||sql%rowcount);
    UPDATE csi_t_txn_line_details
    SET serial_number = 'JCT20591'
    WHERE serial_number = 'jct20591';
    debug('No of rows in csi_t_txn_line_details updated :'||sql%rowcount);
    UPDATE csi_item_instances
    SET serial_number = 'JCT20591'
    WHERE serial_number = 'jct20591';
    debug('No of rows in csi_item_instances updated :'||sql%rowcount);
    COMMIT;
    EXCEPTION
    WHEN OTHERS
    THEN
    l_return_err :='Updating in one of the script has this error:'|| substrb(sqlerrm, 1, 55);
    debug('Value of l_return_err='||l_return_err);
    END;
    Thanks
    Nagamohan

Maybe you are looking for