References from nested clusters

Hi,
Currently our station can test only one product at the time, but we modified the wiring so now we can attach 2 units to the same station. A new application must be written to handle the new scenario. The test has to be executed several times on both the units. The execution is sequential so unit1 first then unit2.
I have created a CONTROL cluster with the following elements
- bool: boolean button (means unit enabled/disabled)
- PARAMS cluster: various text rings. This cluster is disabled and greyed out once the user enabled the starter.
- MEASUREMENT graph
Rules:
- the unit can not be enabeled if any of the text rings is unconfigured.
- the test must be interrupted immediately for the given unit if the enabled button is pressed during the test (when the user disable the unit runtime). So a reference to this button must be used and continously monitored.
- the test must be interrupted immediately for both the units if the stop button is pressed during thet test
- after a test is completed the results must be evaluated and the unit must be disabled if the measured values are outside of the limits.
now... This would be a very easy task if I would have one unit only. I would just create the neccessary control references drive them to the measurement VI and here we go.
But its getting inconveniently complex when I have control 2 units. I can not treat the control elements in an array (so like an array with 2 CONTROL clusters) because then I can not disable the PARAMS clusters independently.
I dont see an easy way to add 2 of the CONTROL clusters to a new cluster (so treat them as one cluster), I am not sure how to get the references in this way. (if I combine them into one cluster its pretty easy to get propertynode/value for any of the elements, but I need control refs)
So I handle both clusters as an independent control on the front panel, so I have add lot of duplicatinos to handle both units in the same way. I find this very inconvenient and error prone, plus it complicates the block diagram 
I am wondering what would be right approach to handle these type of problems.
(I have tried to create reentrant VIs but I gave up because I had to communicate too much between my main VI and the reentrant VIs. That made the code hard to follow)
I use LV2012, but the attachment in LV8 so hopefully everybody can open it
Thanks
Attachments:
Cluster.vi ‏16 KB

Well... if I create a reference to the main cluster then I can use the controls[] property which will give me back 3 references in an array. First the button, second the params clusters, third the graph (maybe the order is different, it doesnt matter for now). But when I drive the params cluster reference to another property node it does not offer me a controls[] property, so I can not access the contents of the cluster itself. I may could use some sort of a cast function, but its really counter-intuitive.
I always have to know the order of any of the given clusters and if I change the order my code will mess up instantly. And hell, should why should I refer to my objects as control[][0], control[][1] etc instead of a real name.
Not sure if this can be resolved in the current LabVIEW environment...
The workaround I made is that I have created a cluster in which each element are references. I drive the button, graph and params cluster references into it and as I have two units to control I made an array of this cluster.
Not sure if you agree but this is overcomplicating the code and I had to create an extra cluster just to access to the references of my original clusters. Pain in the back.
Let me know your thoughts!
thx.

Similar Messages

  • Error while posting a sales order created with reference from contract for

    Hi,
    I am posting a sales document( Type: WA)  created with reference from contract document(  type wk2) for delivery.  The item category in the sales order of the Item is WAN. On posting this document for delivery I am getting the error as "Item category WAN is not defined".  Please help me out how to resolve this issue.
    Thanks
    Jayant

    Hi Jayant,
    I think its value contract releated error,
    You suppose to check material item category group through T.code-MM02 into sales2 tab and maintain VCIT,
    and do item category assignment through T.code- VOV4.
    plz.maintain like that,
    WK2 -          -VCIT-         -           - WAN(contract item category),
    wk2  -          -        -VCTR-          - WAN((contract item category),
    you should also maintain same against your standard Sales Document type and for Standard Item category into VOV4,
    WA(standard docu.type) -VCIT-                             -                -TAN(your standard docu.type item category),
    WA(standard docu.type) -         -VCTR(item usage)-              -TAN(your standard docu.type item category),

  • Currency Translation not working with "Time Reference from Variable"

    We have created several Currency Translations using RSCUR with a fixed "Key Date".  All have been working fine until we got the request to allow a variable date for the exchange rate date.  I have built a variable on 0DATE which I am putting a default date value into using user exit.  This default date is the SAME date as the fixed "Key Date" which we have been using.  Unfortunately when we use the "Time Reference from Variable" option and use this new variable, no currency conversion is taking place, instead it only shows the original currency values.  I am 100% sure that my variable is getting a value and it is the same date we are using for the fixed "Key Date" value so both methods should be using the exact same exchange rates.  The documentation that I can find states:
    ●      Time reference: The time reference for the currency translation can be either fixed or variable.
    If the time reference is fixed, the time at which the exchange rate is determined is independent of the data. You have the following options:
    ○       You can establish that the time reference be determined upon translation.
    ○       You can select the current date.
    ○       You can specify a fixed date as the key date.
    ○       You can specify any variable that exists for InfoObject 0DATE.
    ○       You can establish that the query key date be used. This is determined in the query settings.
    In my case I am only switching from option "You can specify a fixed date as the key date"=(Key Date) to "You can specify any variable that exists for InfoObject 0DATE"=(Time Reference from Variable).
    What am I missing?  Any help is appreciated.

    I neglected to mention that we are calling this currency translation through a WAD button using the SET_CURRENCY_TRANSLATION command.  I did do a test by applying the currency conversion within query key figure.  This seems to work.  So it appears the issue is with how the WAD is processing the variable, not the query.  When I display the variable in a drop down item within the WAD it does have the default value that I have assigned in user exit.

  • How do I get an activeX object reference from a LabVIEW ActiveXContainer ref?

    How do I get an activeX object reference from a LabVIEW ActiveXContainer ref?
    I'm trying to control an ActiveX object (a Web Browser) from another VI and need to get the object reference programmatically. I can get the LabVIEW ActiveXContainer reference, but am lost on how to get the reference for the object _inside_ the container.

    Hi Lee,
    The reference to the container is actually also accessing the object inside the container. Use the Property Node and Invoke Node to access properties and launch methods for the object. I've attached a small example that passes the reference to a SubVI and invokes a method inside the SubVI.
    - Philip Courtois, Thinkbot Solutions
    Attachments:
    WebContainer.zip ‏21 KB

  • Creation of Inbound Delivery with reference from PO

    Hi,
            I use this FM-BBP_INB_DELIVERY_CREATE for creation of inbound delivery.  Delivery date is  same  Actual GR date means it's working fine. But i give less than or greater than Actual GR date  means it shows following error,
              'Acknowledgment for PO item 10028 00010 contains date variance'
        Please tell me how to correct this error.Otherwise tell me correct FM/BAPI to create inbound delivery with reference from PO

    Hi Anjaneya,
                My business process is,(In MM side)
         I create one purchase order(me21n) mention Delivery Date is 24.08.2011 and Delivery Qty is 20 etc......And raise the po to vendor.
       In vendor side, check the po details and perform confirmation process i.e creation of inbound delivery using FM BBP_INB_DELIVERY_CREATE. I give the following  inputs,
            Import
              IS_INB_DELIVERY_HEADER -DELIV_DATE  = 26.08.2011
             Tables
             IT_INB_DELIVERY_DETAIL -MATERIAL = M1
             IT_INB_DELIVERY_DETAIL -DELIV_QTY  = 20
            IT_INB_DELIVERY_DETAIL-UNIT = EA
            IT_INB_DELIVERY_DETAIL-PO_NUMBER = 0000010028
             IT_INB_DELIVERY_DETAIL -PO_ITEM  = 00010
    If run this FM shows the following error
           '      Acknowledgment for PO item 0000010028 00010 contains date variance'
                    Please tell me how to correct this error.

  • Mapping from nested to one table (sales order) XML to IDOC

    Hello,
    I have to map a xml file to the IDOC SALESORDER_CREATEFROMDAT2.SALESORDER_CREATEFROMDAT202.
    How I can map the the longtext from the XML file to the IDOC struktur.
    Part of the XML file, there could be n times BPosition with n times longtext. The longtext must be map with a table. I some case its a mapping from nested to mornal table.
        <BPosition>
             <lpos>1</lpos>
             <bbl_sap_nr/>
             <milvonr/>
             <kurztitel/>
             <anzbest/>
             <anzliefer/>
             <kostenpflichtig/>
             <longtext>
                <line>pos1 zeile1</line>
                <line>pos1 zeile 2</line>
             </longtext>
          </BPosition>
    thanks for your help.

    Hi, I have to map this 1 XML to 1 IDOC
    XML:
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:MT_Milver xmlns:ns0="http://ccssap.bfi.admin.ch/milver">
       <bestellung>
          <besteller>
             <bestellnr/>
             <auftragdefit/>
             <wempfdebit/>
             <bestelldat/>
             <lieferdat/>
             <anzpos/>
             <language/>
             <adrzeile1/>
             <adrzeile2/>
             <adrzeile3/>
             <adrzeile4/>
          </besteller>
          <Kopf>
             <Lkopf>Kopf1 zeile1</Lkopf>
             <Lkopf>Kopf1 zeile2</Lkopf>
          </Kopf>
          <BPosition>
             <lpos>1</lpos>
             <matnr/>
             <milvonr/>
             <kurztitel/>
             <anzbest/>
             <anzliefer/>
             <kostenpflichtig/>
             <bemerkung>
                <line>pos1 zeile1</line>
                <line>pos1 zeile 2</line>
             </bemerkung>
          </BPosition>
          <BPosition>
             <lpos>2</lpos>
             <matnr/>
             <milvonr/>
             <kurztitel/>
             <anzbest/>
             <anzliefer/>
             <kostenpflichtig/>
             <bemerkung>
                <line>pos2 zeile1</line>
                <line>pos2 zeile 2</line>
             </bemerkung>
          </BPosition>
       </bestellung>
    </ns0:MT_Milver>
    IDOC:
    The Idoc have a segment for the longtext (table).I have to map, lpos, line into  E1BPSDTEXT from SALESORDER_CREATEFROMDAT2. Its now more clear?

  • Pricing procedure for order with reference from order

    Dear Friends,
    If I create a sales order with reference to another sales order of different type, the pricing procedure is copied too.
    But I would to use another pricing procedure for second document
    I found the oss note 14136 but this is for reference from invoce
    I tried to create new data transfer routine for orders in copy from 51, but does not work
    Can you help me??
    thanks
    best regards
    GdA

    > If I create a sales order with reference to another sales order of different type, the pricing procedure is copied too. But I would to use another pricing procedure for second document,
    Based on my understanding of query.
    You are looking for a different pricing procedure in second doc.
    For instance, the PricProc for SalesDoc1 is ZPR001 and  the PricProc for SalesDoc2 is ZPR002, in addition to that, you want SalesDoc1 to become reference doc for SalesDoc2.
    For this, ZPR002 & ZPR001 should have common base price condition type and rest pricing can change.
    And for maintaining different Pricing Procedure with similar combination of sales area for SalesDoc1 & SalesDoc2, maintain different document pricing procedure for both docs and maintain Pricing procedure accordingly..
    Thanks & Regards
    J Prakash

  • How do I create a runtime library reference from a J2EE library DC?

    I've created a J2EE library DC that references some classes in an already deployed library.  The referenced jar file has been correctly deployed, as it's successfully used by some other components.  I can build the DC, since I've created created a compile-time reference to the local copy of the target jar file.
    Unfortunately, I can't figure out how to create a runtime reference from my J2EE library to the already deployed library - there just doesn't appear to be any place to put the reference, at least using a gui-based function in NWDS.  Unlike WebDynpro, which has a 'references' configuration option, J2EE lib's don't appear to have anything similar.
    Where/How can I do this?
    BTW, the Visual Administrator function 'ClassLoader Viewer ' is a very handy tool for diagnosing ClassDefNotFoundError errors....

    Hello Ken,
    well it seems to be not a trivial thing.
    1) Build your library DC.
    2) Create folder "server" in root DC folder "_comp".
    3) Extract provider.xml from generated SDA file to "server" folder.
    4) Add references in provider.xml:
        <references>
          <reference type="library" strength="weak">
            sapxmltoolkit
          </reference>
          <reference type="library" strength="weak">
            com.sap.lcr.api.cimclient
          </reference>
          <reference type="service" strength="weak">
            tc~sec~securestorage~service
          </reference>
        </references>
    5) Rebuild DC. Deploy.
    6) Enjoy!
    Useful links:
    http://help.sap.com/saphelp_webas630/helpdata/en/b5/22123b8d92294fac207283f3e8756e/content.htm
    http://help.sap.com/saphelp_webas630/helpdata/en/09/5d963be736904c96cbdfe93793eb42/TEMPLATE_image002.gif
    Best regards, Maksim Rashchynski

  • Is it possible to call a LabVIEW VI by reference from a CIN?

    I am calling by reference in my LabVIEW program and would like to do the same from a CIN, if possible.

    > I am calling by reference in my LabVIEW program and would like to do
    > the same from a CIN, if possible.
    >
    It is not possible to directly call a VI by reference from a CIN.
    There are a couple approaches that are similar that will work. If you
    have the professional version, you can build a DLL from VIs and can call
    the DLL entrypoints from your CIN.
    It is also possible to signal a LV occurrence from a CIN, and a LV
    diagram could run a VI or perform an operation when the occurrence is
    set. You will not be able to pass parameters with the occurrence though.
    Finally, the approach that will be easiest to debug is to change the CIN
    so that it returns to the diagram more often. Call the CIN and have it
    return with an action. The actions can be -- run
    a particular VI, delay
    for x ms and call the CIN again, end the program, etc.
    This last approach will be slightly less efficient at runtime, but in my
    experience they are much more flexible and much easier to debug.
    Greg McKaskle

  • Post new document by reference from a hundred posted document.

    i want to post new 500 reverse posting documents by reference from the existing 500 documents. but FBR2 can only do like this one by one. i cannot use mass reverse function because almost of them were cleared. is there any standard program or function can do like this?

    many thanks.
    i try to create the batch input session for FBR2 by recording function (SHDB). but i found errors when i release my batch input session, due to each reference document has the diference number of line items. and each item contains profit segment data as well.  system always prompt the coding block screen for each item. but if i use FBR2 directly, system will not show this coding block screen.
    i don't know why both method work not the same.

  • Batch file extracting all files from nested archives

    I have managed to leverage a powerful
    forfiles command line utility with the mighty
    7z compression program.
    Below is a simple batch file extracting all files from nested archives hidden at any depth inside other archives and/or folders. After the extraction each archive file turns into a folder having the archive file name. If, for example, there was an "outer.rar"
    archive file containing nothing but an "inner.zip" archive with only "afile.txt" inside, "outer.rar" becomes "...\outer.rar\inner.zip\afile.txt" file system path.
    @echo off
    rem extract_nested_archives.bat
    move %1 "%TMP%"\%2
    md %2
    7z x -o%1 -y %TMP%\%2
    del "%TMP%"\%2
    for %%a in (zip rar jar z bz2 gz gzip tgz tar lha iso wim cab rpm deb) do forfiles /P %1 /S /M *.%%a /C "cmd /c if @isdir==FALSE extract_nested_archives.bat @path @file"
    ARCHIVES ARE DELETED DURING THE EXTRACTION! Make a copy before running the script!
    "7z.exe" and "extract_nested_archives.bat" should be in folders available via the %PATH% environment variable.
    The first parameter of extract_nested_archives.bat is the full path name of the archive or folder that should be fully expanded; the second parameter is just the archive or folder name without the path. So you should run "c:\temp\extract_nested_archives.bat
    c:\temp\outer.rar outer.rar" from the command line to completely expand "outer.rar". "c:\temp" must be the current folder.
    Best regards, 0x000000AF

    Incredibly useful!  Thank you so much.  I did make a couple of small changes to make the script a little easier to use from the end-user perspective.
    First - I don't like making the user input the redundant second parameter, so I added this snippet which extracts it from the first parameter.  The first line of the snippet enables delayed expansion so that special characters in our file name don't
    break anything.  The second line pulls the parameter into a variable, and the 3rd line uses delayed expansion on that new variable.  Before implementing delayed expansion I had problems with file paths which included parentheses.
    SetLocal EnableDelayedExpansion
    Set SOURCE=%1
    For %%Z in (!source!) do (
    set FILENAME=%%~nxZ
    set FILENAME=%FILENAME:"=%
    Anyway once that was done, I just used %FILENAME% everywhere in the script instead of
    %2 (making sure to correct quotes as needed)
    This way, to run my script all you need to run is:
    C:\temp\extract_nested_archives.bat C:\temp\Archive.zip
    Second - I didn't want to modify the Windows environment variable.  So I replaced
    7z with "%PROGRAMFILES%\7-zip\7z.exe"
    I also replaced extract_nested_archives.bat with "%~f0" (which represents the full path+filename of the current script).
    Here is my full script now.  Tested on Windows 8 with the 64-bit version of 7-zip installed:
    @echo off
    Setlocal EnableDelayedExpansion
    Set source=%1
    For %%Z in (!source!) do (
    set FILENAME=%%~nxZ
    set FILENAME=%FILENAME:"=%
    move /Y %1 "%TMP%\%FILENAME%"
    md "%FILENAME%"
    "%PROGRAMFILES%\7-zip\7z.exe" x -o%1 -y "%TMP%\%FILENAME%"
    DEL "%TMP%\%FILENAME%"
    for %%a in (zip rar jar z bz2 gz gzip tgz tar lha iso wim cab rpm deb) do (
    forfiles /P %1 /S /M *.%%a /C "cmd /c if @isdir==FALSE "%~f0" @path @file"

  • Opening a VI Reference from an Application

    I have a VI that calls "Open VI Reference".
    When I'm developing, its not a problem to generate the path, I just point at the path where the VI is located.
    When I build an application, what the heck is the path to the VI?

    LabVIEW can't figure magicallly which VIs you'll call dynamically to include them in the application. That is why you have to add them yourself as "Dynamic VI" in the application builder. It is a one time procedure and may be tedious at most but not painful...
    When you add a VI as Dynamic VI in the AB, the VI and its subVIs are included in the application internal LLB so you do not have to specify the subVIs in the list.
    Labviewguru suggested to include the dynamic VIs on the diagram of a loader VI (set as Dynamic VI in the AB). It is true that all subVIs will be automatically included but you will find the procedure as tedious as selecting them in the AB.
    About the Dynamic VI path in a built application, the good news is that you don't have to care
    at all. When opening a VI reference from a VI path, the server first looks in the application internal LLB (where are stored dynamic VIs) to search for a VI having the same name. If one is found, the actual path is ignored and the internal VI is opened. Thus you can leave the same path you used in LabVIEW development to build an application calling Dynamic VIs.
    Including a LLB as support file won't have any effect on the application. The LLB will simply be copied as is in the destination directory so unless you build dynamic VI paths to this exact location, the VIs won't be found.
    Error 7 means that the VI specified in the path was not found neither in memory, in the internal LLB nor at the actual path. Unless I'm mistaken it also occurs when you attempt to open the front panel of a VI which FP hasn't been saved. By default the AB do not save the FP of dynamic VIs, you have to change this setting manually when required.
    LabVIEW, C'est LabVIEW

  • How can i use class reference from an array effeciently?

    Hi,
    I made some test here with getting a class reference from an array and using the reference's methods or variables.
    Basically arrayEx is a container of type Array and it contains the Person's class instance in it. Num is a number extracted from the Person's instance
    Example #1----Strongly typed
    Var reference:Person;
    Var num:int;
    //Assignation
    reference=arrayEx[0];-----IT IS SLOW HERE
    //Use
    num=reference.number --- IT IS FAST HERE
    Example #2---Not typed
    Var reference:*;
    Var num:int;
    //Assignation
    reference=arrayEx[0]; ---- IT IS FAST HERE
    //Use
    num=reference.number ---IT IS SLOW HERE
    No matter what i change in both code like casting Person on arrayEx, i cant seem to make them work both fast at the same time
    If someone knows how, please tell me,
    Dominik

    Hi,
    I made some test here with getting a class reference from an array and using the reference's methods or variables.
    Basically arrayEx is a container of type Array and it contains the Person's class instance in it. Num is a number extracted from the Person's instance
    Example #1----Strongly typed
    Var reference:Person;
    Var num:int;
    //Assignation
    reference=arrayEx[0];-----IT IS SLOW HERE
    //Use
    num=reference.number --- IT IS FAST HERE
    Example #2---Not typed
    Var reference:*;
    Var num:int;
    //Assignation
    reference=arrayEx[0]; ---- IT IS FAST HERE
    //Use
    num=reference.number ---IT IS SLOW HERE
    No matter what i change in both code like casting Person on arrayEx, i cant seem to make them work both fast at the same time
    If someone knows how, please tell me,
    Dominik

  • Retrieving data from Payroll clusters u0085

    Hi ,
             Can any one help me , How to retrieve data from payroll clusters , For example take payus_result (structure ) and I want to retrieve data from PC208 and PC209  .  Can any one give step by step process how to do this?
      I am working with HR – ABAP. Mostly working with Payrolls. So I want to know this. Plz help me in this ASAP.
    Thanks & Regards,
    K Venkata Suresh

    Hello,
    you have to read the cluster like this.
    Tables : pcl1, pcl2.
    temp.variable to hold the payroll period
    DATA : g_f_pper  LIKE pc261-fpper .
    DATA : g_f_seqnr LIKE pc261-seqnr.
    Cluster Definition.
    INCLUDE rpc2cd00.          "Cluster CD Data-Definition
    INCLUDE rpppxd00.          "Data-Definition Puffer PCL1/PCL2
    INCLUDE rpppxd10.          "Common Part Puffer PCL1/PCL2
    INCLUDE rpppxm00 .
    INCLUDE rpc2rx02 .
    INCLUDE rpc2rx39 .
    INCLUDE rpc2ca00 .
    INCLUDE rpc2rdd1 .
    INCLUDE rpc2rx29 .
    INCLUDE hdepaymacro .
    Get the payroll period
      CLEAR : g_f_pper.
      CONCATENATE pn-begda0(4) pn-begda4(2) INTO g_f_pper .
    fill the keys for the CU cluster
      cd-key-pernr = pernr-pernr.
    import from the cluster CU
      CLEAR: rgdir, g_f_seqnr.
      REFRESH rgdir.
      rp-imp-c2-cd.
      IF rp-imp-cd-subrc = 0 .
        IF NOT rgdir[] IS INITIAL.
          SORT rgdir BY fpbeg DESCENDING.
          LOOP AT rgdir WHERE fpper EQ g_f_pper
                       AND   srtza EQ 'A'.  " Active          g_f_seqnr = rgdir-seqnr.
          ENDLOOP.
        ENDIF.
      ENDIF.
    fill the RX key and then import the cluster
      rx-key-pernr =  pernr-pernr .
      CLEAR : rx-key-seqno.
      UNPACK g_f_seqnr TO rx-key-seqno .
      CLEAR rt.
      REFRESH rt.
      rp-imp-c2-rd.
      IF rp-imp-rd-subrc = 0.
       LOOP AT rt WHERE lgart = '9230'. RT " Result table
    move the values here
       Endloop.
    ENDIF.
    Reward if helps.
    Thanks,
    Krishnakumar

  • Strange references from "sun.awt.X11.InputMethod"

    We profiled our software and found obscure references for panels that have been closed, but can not be garbaged collected because there is a reference from "sun.awt.X11.InputMethod".
    It seems that it has something to do with the clipboard / Klipper of Linux, as the reference is sometimes solved when marking and copying text. Anyone had this error too and is this a bug in Java, or how can we fix that issue? We have very huge panels and are getting memory problems if they are not deleted correctly or too late. Has anyone more infos of the cause and what can be done?
    Please help.

    Similar problem I solved with update driver printer.
    Bya

Maybe you are looking for

  • How to change the color of Menu links in obiee

    Does anyone knows how to change the colors of Menu links in obiee. With menu I mean the menu links default right top (Search, homepage, Catalogus, Dashboards, new, Open). This should be set in skin and style files, not? I searched a lot. I could not

  • Internet outage - no wan coax light

    Lost power over a week ago, when power came back tv service was restored, however no internet connection. Technical support sent me new router, same thing no internet. I rebooted the system by unplugging everything and disconnecting backup battery. F

  • 11g: using limited values in column prompts

    Hello, in the "Column Filter Prompt Properties" dialog box used in 10g, there was an option called "Limited Values" for "What values should be shown to the user" question. So the users could only see those choices allowed by a filter. Is there such t

  • Using weblogic.cluster.singleton.SingletonService

    We have written a Singleton class implementing this interface weblogic.cluster.singleton.SingletonService http://otndnld.oracle.co.jp/document/products/wls/docs100/javadocs/weblogic/cluster/singleton/SingletonService.html and have seen on one occasio

  • Sudden Problems moving files on External HD

    I have a Seagate Goflex 1TB external harddrive that I've been using for a few weeks. Suddenly, tonight the hd stopped letting me move files with the hd or to or from my macbook. I can still delete files though. It's been working fine since I got it a