2-Step Picking without using Groups

Hi all,
Does anyone know if it is possible to implement a 2-step picking process that does not require creating and processing by groups?
I have a process which is not exactly 2-step picking, but the functionality supports it - except for the requirement to create groups for the TRs.
For my process, I want a one to one relationship between the removal TO and the picking to destination TO.
The reason I need two TOs is because during confirmation of the removal TO, I need to identify a specific bin where the stock will reside before the second TO picks it from there. There will always be a one to one relationship between the two transfer orders.
Any good ideas for a solution? I'm open to other suggestions.
Regards,
Mark.

The business process is as follows:
Production orders generate requirements to provide materials to production supply areas. Upon production order release we create TR in warehouse.
Stock is picked from various locations in the warehouse to a "train station" where is it loaded onto a train.
The train is then driven around the manufacturing site on a specific route and inventory is dropped off at each PSA until the train is empty.
There are several different train routes.
The requirement is for a train driver to know exactly what is on the train and to have a program which shows him what TO items are loaded and then sort those items by route/PSA sort sequence to send him on his way.
There is always a one to one relationship between the pick from warehouse inventory and the requirement at the PSA.
I was hoping to use two transfer orders - one picking to a storage type that allows you to change the destination bin manually, where the destination bin = the train carriage, which would be confirmed when the train driver loads his items. The second TO would then be triggered automatically to take the inventory from the Train carriage to the PSA.
I was then going to build a custom scanning program which would look at all the items located in the bins relevant to the train in question and find the TOs, then queue these TOs according to the route PSA sort sequence.

Similar Messages

  • How to write a SQL Query without using group by clause

    Hi,
    Can anyone help me to find out if there is a approach to build a SQL Query without using group by clause.
    Please site an example if is it so,
    Regards

    I hope this example could illuminate danepc on is problem.
    CREATE or replace TYPE MY_ARRAY AS TABLE OF INTEGER
    CREATE OR REPLACE FUNCTION GET_ARR return my_array
    as
         arr my_array;
    begin
         arr := my_array();
         for i in 1..10 loop
              arr.extend;
              arr(i) := i mod 7;
         end loop;
         return arr;
    end;
    select column_value
    from table(get_arr)
    order by column_value;
    select column_value,count(*) occurences
    from table(get_arr)
    group by column_value
    order by column_value;And the output should be something like this:
    SQL> CREATE or replace TYPE MY_ARRAY AS TABLE OF INTEGER
      2  /
    Tipo creato.
    SQL>
    SQL> CREATE OR REPLACE FUNCTION GET_ARR return my_array
      2  as
      3   arr my_array;
      4  begin
      5   arr := my_array();
      6   for i in 1..10 loop
      7    arr.extend;
      8    arr(i) := i mod 7;
      9   end loop;
    10   return arr;
    11  end;
    12  /
    Funzione creata.
    SQL>
    SQL>
    SQL> select column_value
      2  from table(get_arr)
      3  order by column_value;
    COLUMN_VALUE
               0
               1
               1
               2
               2
               3
               3
               4
               5
               6
    Selezionate 10 righe.
    SQL>
    SQL> select column_value,count(*) occurences
      2  from table(get_arr)
      3  group by column_value
      4  order by column_value;
    COLUMN_VALUE OCCURENCES
               0          1
               1          2
               2          2
               3          2
               4          1
               5          1
               6          1
    Selezionate 7 righe.
    SQL> Bye Alessandro

  • Need to take rownum highest value without using grouping functions

    Hi
    I want to display highest value in the rownum column and customer details without using grouping functions like max or count
    this below query gives me all rownum values and customer details
    SELECT ROWNUM ROWNUM_1, CUSTOMER_NO, CUSTOMER_NAME, CUSTOMER_DOJ, CUSTOMER_MOBILENO FROM CUSTOMER;
    can any one help me.

    The above query won't work as it's missing "from" cluase in the inner select statement.
    And even if corrected it willl print rownum values thrice: value "1",max_rownum, max_rownum followed by customer details.
    Below is the simple query to retrieve max row_num along with the corresponding customer details.
    select * from (SELECT ROWNUM ROWNUM_1, CUSTOMER_NO, CUSTOMER_NAME, CUSTOMER_DOJ, CUSTOMER_MOBILENO FROM CUSTOMER order by rownum_1 desc) where rownum<=1 ;

  • Can u write the following query without using group by clause

    select sp.sid, p.pid, p.name from product p, supp_prod sp
    where sp.pid= p.pid and
    sp.sid = ( select sid from supp_prod group by sid
    having count(*) =(select count(*) from product));
    thru this, we retrieving all the products delivered by the supplier.
    Can you write the following query without using the group by clause

      select sp.sid, p.pid, p.name
        from product p, supp_prod sp
       where sp.pid= p.pid the above query will still retrieve all the products supplied by the supplier. sub-query is not necessary.
    maybe if you can post some sample data and output will help us understand what you want to achieve.

  • How to create a sum on change of a detailed record without using groups

    Hi,
    I'm working on an overtime/payroll report.  Overtime hours are calculated based on hours worked greater than 40 within the span of Sunday to Saturday.  Further, pay periods are every two weeks and do not align with the calendar week of sunday to saturday.
    I've managed to figure out how to do the overtime calculation from sunday to saturday and then the totals for each of these calendar weeks. However, I'd also like to calculate the totals for the pay periods.  I cannot group on both the calendar week AND the pay period id because sometimes the calendar week starts before the pay period starts and sometimes the pay period starts before the calendar week. So, one is not a sub-group of the other.  I tried setting both up as groups but it, unfortunately, resets by hour calculations at the wrong point because when one group is still going the other is ending.
    So, the report is working well with just the one group - calendar week (oh, and there is a higher level group - employee id as this calculation is done for each employee). I can include the pay period id in the detail lines and I can see when it changes. So, if I could create a formula that summed the hours by pay period id and than reset when a new pay period id begins that is what I am after. I just want the sum of hours upon each change of pay period id.  I'll attempt to show what the data looks like below:
    Group 1: Employee Name (say Fred Jones)
       Group 2: Week Beginning January 8, 2012
    Date  RegularHours   OvertimeHours  PayPeriodId
    Jan 8        12                              0                            1
    Jan 9        12                              0                            1
    Jan 10      12                              0                            1
    Jan 11       4                               8                            1
    Jan 12       0                               12                          1
    Jan 13       0                               9                            1
    Jan 14       0                               6                            1
    Total      40                          35                   
    Group 2: Week Beginning January 15, 2012
    Date  RegularHours   OvertimeHours  PayPeriodId
    Jan 15      12                              0                            1
    Jan 16      12                              0                            1
    Jan 17      12                              0                            1
    Jan 18       4                               9                            2
    Jan 19       0                               10                          2
    Jan 20       0                               8                            2
    Jan 21       0                               7                            2
    Total      40                          34                   
    So, the total hours for pay period #1 should be:
    RegularHours   OvertimeHours
    76                                35
    And, the total hours for pay period #2 should be:
    RegularHours   OvertimeHours
    4                                   34
    I tried creating a formula: Distinctcount ({@OT Hours}, {Command.pay_periods_id}) but Crystal says I cannot summarize the formula that is in it.
    I'm not a programmer but it feels like a loop of some sort (For each, unique pay period id sum the OT Hours).
    Any and all help much appreciated in advance!
    Mark
    Edited by: mahewitt on Feb 14, 2012 4:42 AM

    Hi Mark,
    Here's something I have come up with:
    1) Create this formula and place it on the details section beside the PayPeriodID field.Replace in the formula with PayPeriodId, with RegularHours and with OvertimeHours.
    WhilePrintingRecords;
    numbervar array reg_hrs;
    numbervar array ot_hrs;
    numbervar array payid;
    numbervar reg;
    numbervar ot;
    numbervar x;
    numbervar y;
    if not({PayperId} in payid) then
        y := y + 1;
        redim preserve payid[y];
        payid[y] := {PayperId};
    if onlastrecord then
        reg := reg + {Regular};
        ot := ot + {Overtime};
        x := x + 1;
        redim preserve reg_hrs[x];
        redim preserve ot_hrs[x];
        reg_hrs[x] := reg;
        ot_hrs[x] := ot;
    else if {PayperId} = next({PayperId}) then
        reg := reg + {Regular};
        ot := ot + {Overtime};
    else
        reg := reg + {Regular};
        ot := ot + {Overtime};
        x := x + 1;
        redim preserve reg_hrs[x];
        redim preserve ot_hrs[x];
        reg_hrs[x] := reg;
        ot_hrs[x] := ot;
        reg := 0;
        ot := 0;
    2) Create this formula and place it on the Group Footer 1 (Employee Name group):
    WhilePrintingRecords;
    numbervar array payid;
    numbervar array reg_hrs;
    numbervar array ot_hrs;
    numbervar i;
    stringvar final;
    for i := 1 to ubound(payid) do
        final := final + "For Pay Period # "&payid<i>&chr(13)&chr(13)&"Regular Working Hours are :"&reg_hrs<i>&chr(13)&"Overtime Hours are :"&ot_hrs<i>&chr(13)&chr(13)&chr(13)
    final;
    3) Right-click this field and select Format Field > Common tab > Check the 'can grow' option and increase the horizontal size of the formula field to around 3.5 to 4'
    4) Create this formula to reset the variables at the Group Header 1. This will make sure it prints the Regular and Overtime hours for every employee:
    whileprintingrecords;
    numbervar array reg_hrs := 0;
    numbervar array ot_hrs := 0;
    numbervar array payid := 0;
    numbervar reg := 0;
    numbervar ot := 0;
    numbervar x := 0;
    numbervar y := 0;
    numbervar i := 0;
    stringvar final := "";
    You may then hide the 1st and the last formula (Right-click > Format field > Common tab > Suppress)
    Let me know how this goes!
    -Abhilash

  • 2-step picking for production

    I have a problem when setting up 2-step picking for production.
    The process works like this:
    Stage the materials in LP12
    Create TR group via LT41
    Perform first step via LT0E
    Process TR via LB10 to create 2nd step TO
    The issue is, that if I go to LB10 before creating the grouping, I can process the TRs directly and get a 1-step picking process. How can I avoid this?  Basically LB10 should not show TR items that are relevant for 2-step picking and the 1st step has not been done yet.

    Hi ASA,
    Not clear if you want two step picking or two step confirmation for the TO (WM removal of material against production order)
    Two step picking is used where same material in multiple deliveries required to pick in single movement by clubbing all required quantities in first (picking) TO and later this clubbed quantity gets distributed to all deliveries as per their requirement in second (distribution) TO.
    Two step confirmation of TO involve where single TO quantity needs to pick and confirm in two different incidence. As like you mentioned the receiving location is far away from the sending location and stock removal and confirmation should not be done immediately.
    Please confirm.
    Reg,
    Sudhir

  • Single step workflow with multiple approvers (without using a group)

    Hi,
    is it possible to have a single step workflow with multiple approvers without using a group? This is for a contract document.
    i want to add a number of users based on particular logic. The approvers are random and do not belong to any particular group.
    DO let me know if it is possible or if any of you have done that.
    thanks in advance.
    regards,
    rubio

    Hi Rubio,
    I believe the behavior would be, if individual users are added as approvers then the system would require each approver to approve the document. However, if you use the user group, you could set the role so that it would be either ALL or ANY.
    Regards,
    Vikram

  • How can I publish an App to a selceted group of people without using the Adobe Contetn Viewer?

    How can I publish an App to a selected group of people ( not via App Store) without using the Adobe Content Viewer?
    The App was developed with InDesign 6.0

    You'd have to sign up for an Apple Developer account and then gather all the UDID's (Apple limits this to only 100 devices) that you want your app to be installed on. Create your mobile provisioning profiles to include these ID's and then you could use TestFlight to push out your app and monitor who has installed it. Of course Testflight is intended for monitoring your apps performance but I'm sure you can get away with it if you use it to push you app. One thing to keep in mind is the mobile provisoning profiles are only valid for 1 year. Hope this helps.

  • Steps to Upgrade PT8.49 to 8.50 Manually without using an Upgrade Template

    Folks,
    Hello. I am Upgrading PeopleTools 8.49 to 8.50 Manually without using an Upgrade Template because I cannot download an Upgrade Template from Oracle.
    Upgrading is actually add/drop some tables/views in PeopleTools 8.49 Database using Chang Assistant 8.50.
    According to the document "Enterprise PeopleTools 8.50 Upgrade" Chapter 3 and Chapter 4, after configure Change Assistant 8.50 and EMF, we need to creat an Upgrade job and run some scripts.
    I have configured Change Assistant 8.50 and EMF. EMF run successfully. After that, I don't know the exact steps to do in Change Assistant.
    Can any folks tell me the steps to upgrade PT8.49 to 8.50 manually in Chang Assistant without using an Upgrade Template after configure Change Assistant and EMF ?
    Thanks.

    Do you know what is Change Assistant ? It is running job defined from template and indicate when step has to be done manually. But Change Assistant itself is nothing but an assistant, it does not build record, it does not run DMS, it does not run sql script, for all those Change Assistant is calling corresponding tools (AppDesigner, DataMover, SQL*Plus). Consequently, if you don't have template, you should do yourself every single step usually ran by the PsCA, but you won't need PsCA itself, just run manually whatever indicated in the doc (basically replace "PsCA" by "manually").
    As I already told you earlier, it is tedious, but works fine if you pay attention enough.
    HTH,
    Nicolas.

  • Remove Excess group dynamically in crystal 10 without using ReportAppServer

    In Crystal report XI I've used follwing code to remove excess group dynamically from aspx page:
                //Remove of Excess Group
                MaxGrpInReport = 9;
               for (int iCount = MaxGrpInReport; iCount >= objShowReport.TotalGroupNo + 1; iCount--)
                    customerReport.ReportClientDocument.DataDefController.GroupController.Remove(customerReport.ReportClientDocument.DataDefinition.Groups[iCount - 1]);
                customerReport.Refresh();
    But when I'm using crystal 10 (Including with Visual Studio 2010) it is getting error. Because "DataDefController.GroupController" is a server component . I'm not using any ReportAppServer. So how can I remove excess group without using ReportAppServer?
    Edited by: sujoyd on Mar 7, 2011 5:11 AM
    Edited by: sujoyd on Mar 7, 2011 5:12 AM
    Edited by: sujoyd on Mar 7, 2011 5:13 AM

    Hello,
    Crystal 10 is included with VS 2005 and VS 2008. there is no CR runtime included with VS 2010. You can download it from our support site.
    CR 10.2 or 10.5 is not supported in VS 2010.
    See this link to get the downloads: SAP Crystal Reports, developer version for Microsoft Visual Studio: Updates & Runtime Downloads [original link is broken]
    Thank you
    Don

  • Is it possible to group multiple columns individually without using union?

    Hi, if I have a table with a numebr of columns I want to group eg gender, nationality, age and I want to produce a summary such like:
    Group Count
    Male 10
    Female 23
    British 19
    Irish 14
    18 10
    etc.
    Or even better:
    Group Count
    Gender-Male 10
    Gender-Female 23
    Nationaility-British 19
    Nationality-Irish 14
    Age-18 10
    Is this possible without using loads of unions? I just want to do this in the best, most efficient way as the table involved has >100 million rows.
    Many thanks
    Jen :)

    May be this
    --Test data
    with t
    as
    select 'M' gender, 'INDIAN'  nationality, 25 age from dual union all
    select 'M' gender, 'INDIAN'  nationality, 25 age from dual union all
    select 'M' gender, 'INDIAN'  nationality, 30 age from dual union all
    select 'M' gender, 'IRISH'   nationality, 30 age from dual union all
    select 'M' gender, 'IRISH'   nationality, 40 age from dual union all
    select 'F' gender, 'IRISH'   nationality, 40 age from dual union all
    select 'F' gender, 'BRITISH' nationality, 50 age from dual union all
    select 'F' gender, 'BRITISH' nationality, 50 age from dual union all
    select 'F' gender, 'BRITISH' nationality, 45 age from dual union all
    select 'F' gender, 'BRITISH' nationality, 45 age from dual
    --Test Data Ends
    -- Main Query
    select decode(no, 1, 'Gender-', 2, 'Nationality-', 3, 'Age-') || decode(no, 1, gender, 2, nationality, 3, to_char(age)) val,
           count(*) cnt
      from t
    cross join (select level no from dual connect by level <= 3)
    group by no, decode(no, 1, gender, 2, nationality, 3, to_char(age))
    order by no;
    VAL                                                  CNT
    Gender-F                                               5
    Gender-M                                               5
    Nationality-BRITISH                                    4
    Nationality-INDIAN                                     3
    Nationality-IRISH                                      3
    Age-25                                                 2
    Age-30                                                 2
    Age-40                                                 2
    Age-45                                                 2
    Age-50                                                 2
    10 rows selected

  • Merging multiple rows without using max group by

    Hi guys,
    Is there any better way to convert
    with
    test as
    select '001' as id, 'Apple' as name, 'A' as segment1,null as segment2,null as segment3 from dual union all
    select '001' as id, 'Apple' as name,null as segment1, 'P' as segment2,null as segment3 from dual union all
    select '001' as id, 'Apple' as name,null as segment1,null as segment2, 'L' as segment3 from dual
    select * from test
    to
    select '001' as id, 'Apple' as name, 'A' as segment1,'P' as segment2,'L' as segment3 from dual
    without using max and group by?
    There are about 5 million records and using max group by is slowing it down by a lot.
    It is needed to be done by SQL.
    Thank You

    with
    test as
    select '001' as id, 'Apple' as name, 'A' as segment1,null as segment2,null as segment3 from dual union all
    select '001' as id, 'Apple' as name,null as segment1, 'P' as segment2,null as segment3 from dual union all
    select '001' as id, 'Apple' as name,null as segment1,null as segment2, 'L' as segment3 from dual
    select distinct id, name
    , last_value(segment1 ignore nulls) over (partition by id, name order by segment1) as seg1
    , last_value(segment2 ignore nulls) over (partition by id, name order by segment2) as seg2
    , last_value(segment3 ignore nulls) over (partition by id, name order by segment3) as seg3
    from test
    ;No max or group by, but not necessarily any faster. If you post your actual query, some sample data with expected results, and the additional information requested in the following posts, then someone may be able to provide better suggestions.
    When your query takes too long
    When your query takes too long ...
    How to Post a SQL statement tuning request
    HOW TO: Post a SQL statement tuning request - template posting
    Regards,
    Bob

  • Implementa​tion of synchroniz​ation steps without using batch or parallel sequences

    We are using a custom built process model based upon the sequential process model. 
    Do I need to invoke the Synchronization manager in order to use the synchronization steps when not using the batch or parallel process models?
    Solved!
    Go to Solution.

    All synchronization steps and operations (Locks, Rendezvous, Notifications, Queues, etc)  will work in any model or without  a model, except for Batch synchronization.
    If you need Batch synchronization, your model needs to use the Synchronization>>Advanced>>Batch Specification step type to specify which threads are in the batch. Since you aren't starting from the Batch model, I doubt you need to worry about that.

  • Steps to expose a web service without using SR

    Hello,
    How can I expose a web service without using the service registry?  Is there some documentation for this process?
    Thanks,
    Matt

    Thanks for the response.  Although, I do not have an * in the Sender Agreement.
    Here is the situation:
    When I attempt to reach the URL for my Web Service but using NWA instead of the Service Call I get into NWA.
    https://xxxxx.steelcasedev.com/nwa
    Result: Success
    When I use SOAPSonar to run this URL I get the CPA error:
    https://xxxxx.steelcasedev.com//XISOAPAdapter/MessageServlet?senderParty=&senderService=WSProcurement_Async_Sender&receiverParty=&receiverService=Steelcase_Dev&interface=WSProcure_Out&interfaceNamespace=urn:steelcasedev.com:wsprocure:xsuppliers
    Result:  Error
    <context>XIAdapter</context>
              <code>ADAPTER.JAVA_EXCEPTION</code>
              <text><![CDATA[
    com.sap.aii.af.service.cpa.CPAException: com.sap.aii.af.service.cpa.impl.exception.CPALookupException: Couldn't retrieve inbound binding for the given P/S/A values: FP=;TP=;FS=WSProcurement_Async_Sender;TS=Steelcase_SAPR3_D01;AN=WSProcurement_Out;ANS=urn:steelcase.com:wsprocurement:xml2suppliers;
         at com.sap.aii.af.service.cpa.impl.lookup.CommonLookup.checkForError(CommonLookup.java:53)
         at com.sap.aii.af.service.cpa.InboundRuntimeLookup.getBinding(InboundRuntimeLookup.java:411)
         at com.sap.aii.af.service.cpa.impl.lookup.AbstractLookupManager.getBinding(AbstractLookupManager.java:714)
         at com.sap.aii.adapter.soap.web.MessageServlet.doPost(MessageServlet.java:430)
    The sender adapter is active in ID but in RTWB it is "Started but Inactive".  I have found that this status could be related to the fact that I have not had a successful transaction for that channel yet.
    My NW Admin says he found this error: 
    Marked transaction for rollback for message 0015605e-09d7-1ddf-94f7-d5031c019713(INBOUND). Reason: Channel has been configured as inactive and cannot accept messages
    I am quite confused. 
    Thanks,
    Matt

  • Report for field sammg and refnr in two step picking

    Hello Experts,
    I have configure two step picking which is working fine.
    But my concern is when I create a group from deliveries using VL06P, an five digit number (23717) is generated. But while putting same group number in LT72 screen for analysis or doing LT0E, I am getting en error that "this group number is not existing in system.
    Then I have to go to SE16 and search in table T311. Then I found that there are two group number in this table which technical name are REFNR and SAMMG. So I have to pass 23717 in SAMMG field and note down the number (17) from REFNR field and process with REFNR number.
    So is there any report whether I can get the same (when I pass SAMMG number I will get REFNR number) because my business user don't have access to SE16 again it is not acceptable to business.
    Or is there anyway by which I can assign same number to both SAMMG and REFNR, so that my client will refer only one number in stead of two number.
    I am hereby attaching one test data. Kindly go through it and revert to me with your analysis.
    Best Regards,
    Raghu Nayak.

    as an standard SAP you should be able to process the group number(23717) it seems there is some other setting / customization or you are following any additional steps in your system which generates the another number in Group (REFNR) field of T311 as in my case i am getting the same number in both the Group field
    Have a look on the below mentined existing wiki which was shared earlire by SCN member Susheel Tiwari / Pankaj Agarwal
    Two Steps Picking Process in SAP-WM

Maybe you are looking for

  • What gear do I need?  (to record vocal mic and iPod)

    HELP I have a powerbook and I am running a vocal mic and an iPod with some karaoke tracks on it through a Yamaha Stage Pass system and I want to record into garageband, then import it to iTunes and email the mp3 files to some friends and family. what

  • How can i get the 6.1.3 ipsw for iphone 4 sprint (cdma)

    how can i get the 6.1.3 ipsw for iphone 4 sprint (cdma)

  • Login servlet checks db for ID/PWD

    Upon compilation receive the following: Login.java [31:1] unreported exception java.sql.SQLException; must be caught or declared to be thrown String uName = validateUser(userId, password); ^ 1 error This occurs with the following code (which does thr

  • Allow creation of Self Registered Users

    Under Portal Settings in the Admin section is a checkbox to "Allow creation of Self Registered Users". And a note that says "Changes in these settings will take effect immediately." I'd like to utilize this feature and have therefore checked the box,

  • Troubleshooting of elm j10i2

    How can i reset my Elm J10i2 ? When i turn on, the phone don't start. the screen remains blank. Please help me. Warm regards.