Developing more sophisticated enum control methods

I would like to select a function name and map it to a module and channel.  For instance, it would be much better to specify "Cold Water Flow Rate" than to specify "Module 3" and "Channel 7" which have no real meaning.  How can I develop something like an enum but with immutable data with more than one dimension?  I'm thinking the best solution is to make an enum of the function names and use it as an index into an array of module and channel enums but the array is not immutable, or is it?  What other methods should I consider?
Solved!
Go to Solution.

An array is not immutable.  But is Module 3 or Channel 7 something which will never change? What if you get a new DAQ device with different channel numbering?
Make the array a diagram constant or read the data from a configuration file and then do not change the values in the array within the program.  Then index as you mentioned.
Lynn

Similar Messages

  • Change a VI to a more sophisticated pattern (e.g. consumer/producer)

    Hi everybody!
    I have written a VI taking spectra from a triggered flash lamp and spectrometer. The whole systems works in a rotating device. So the triggering and exact timing is quite important. I finally got my Vi to work  but there are still some problems with the spectrometer. I think this is due to the fact that the spectrometer runs into a internal timeout but I don't know why. Furthermore there is still a lot of false triggering when changing to the next sample with a different delay.
    So it's really time to take a deep and think about my program. At the moment I have a flat sequence with some for loops defining the number of measurings as well as the while loops for the triggering...
    Well that's I want to do:
    1. All the necessary data comes in a cluster from a different vi
    2. Initialize: Create folders, calculate positions for the step motor and move it to the initial position, open spectrometer and so on
    3. Start the speed measuring and calculation of delays
    4. Measure the spectrometer dark current
    5. Move step motor to the first position
    6. Start retriggerable task for lamp and spectrometer (the triggering occurs in a subvi, whereas the delays are updated continuously by a reference) 
    7. Measure at step motor position first sample, second sample and so on
    8. Move stepmotor -> 7
    9. Stop retriggerable task for lamp and spectrometer
    10. Save data and wait for a specified time
    11. Back to step 5
    12. In the end: Close the spectrometer, stop the speed measurement and so on
    Furthermore the data has to be displayed:
    1. The actual scan
    2. Step motor position dependent absorption for the actual scan as well as the former scans (by option)
    So much for the theory. I thougt that maybe a produce/consumer patttern would fit but I have no idea how to realize this. Of course I have read a lot but I don't know how to do the triggering stuff and so on.
    I have attached my main vi that you can see how I deal with this at the moment. Of course all the subvis are missing but the working principle should be clear. Please let me know if If you need any more information!
    I want to do two things. First I want to separate the data aquisition from the display and file I/O, second the data aquisition has to be seperated from the lamp and spec triggering.
    Especially the second point seems to be very important because my spectrometer runs into some internal timeout (not because there is no trigger) after some minutes or hours (the exact time is not reproducible, but it does happen) and crashes my whole system  as I mentioned before.
    I don't know why but I hope so much that a more sophisticated vi pattern will solve this problem.
    May you help me with this?
    Thanks!
    Attachments:
    radial_scan_v5.10.vi ‏293 KB

    If the vi runs without user intervention, then simple Enum based state machine architecture can be used.
    1. All the necessary data comes in a cluster from a different vi
    State -1
    2. Initialize: Create folders, calculate positions for the step motor and move it to the initial position, open spectrometer and so on
    State -2 Initialise state
    3. Start the speed measuring and calculation of delays
    This can be a Dynamically launched vi ( and can be launched in State-2) where it waits for the notification from State -2 to start Acquisision.
    This vi will also stop acquisiion based on another notification from the main vi states
    State-3 -> Set start notification for this cont. running sub vi
    4. Measure the spectrometer dark current
    State -4
    5. Move step motor to the first position
    State -5
    6. Start retriggerable task for lamp and spectrometer (the triggering occurs in a subvi, whereas the delays are updated continuously by a reference)
    This can also be another dynamically launched subvi, that is launched in State -2 itself.
    State-6 -> Send Notification to start the Retriggerable task
    7. Measure at step motor position first sample, second sample and so on
    State -7.Measurement
    8. Move stepmotor -> 7
    9. Stop retriggerable task for lamp and spectrometer
    State -8 Send stop notification to stop the Retriggerable task.
    10. Save data and wait for a specified time
    State -9 - Log the Data
    11. Back to step 5
    State 10 .. Check for completion.if required again redirect to state -5
    12. In the end: Close the spectrometer, stop the speed measurement and so on
    State -11 Send stop ACQ notification for all the dynamically launched vis, stop those vis..close  all instrument refs .. stop main vi
    If the states are dependent on user intervention then Event based producer consumer can be used where, the producer will control when to start the whole process and when to stop the process( Using queues).The consumer can be Queue driven Enum based state machine

  • More than one paint method?

    Hi
    Im wondering if it is possible to have more than one paint method. It should look something like this.
    public class MyApplet extends JApplet {
    public void paint(Graphics g) { // the normal paint method
    public void SecondPaint(Graphics gr) { // should i name the Graphics
    // to the same as in the normal paint method ( Graphics g) ?
    }And if its possible how would i repaint the other method?
    This is for the normal
    repaint(); and how would i do for the second paint method?
    please write an example program with two paint methods and just write below how to repaint.
    Thanks you som much if you reply

    (sorry to hijack this thread...) Yes, it'swindows,
    but right now my problem isn't even that. It'sjust
    catching and correcting basic c-coding errors.
    Witness my embarrassment in the JNI forum:
    http://forum.java.sun.com/thread.jspa?threadID=5213196
    &tstart=15
    Now if only I lived in "middle-of-no-where"Virginia!
    Nice! ;-)I saw your note about "middle-of-nowhere" Virginia a little too late. And you don't need to live here; my Solaris machine is up and running 24/7 and is open for SSH and XClient. (Also open for telnet, which comes built into windows, I believe.) If you'd like to brush up on Solaris C, C++ and Java development, just let me know. You're more than welcome to use the machine. I have tons of space on the drive and a dedicated connection just to that machine. There is an application for windows called CygwinX which is an XClient for Solaris. You can use that to remotely log into the Solaris desktop. There are about fifteen other people that I let use the machine for various reasons. I host myriad open source projects for development that you're more than welcome to mess around with. Tools available to you would be NetBeans 5.5, Sun Studio (with the Sun C/C++/Fortran compiler - which is beautiful by the way); and the whole suite of GNU compilers. I have the CDE and the JavaDesktop built in. I also have tons of Motif tutorials and demonstrations if you're interested in those. Heads up, though ... XServer tends to run pretty slowly when I have more than about four users logged onto a desktop at once. But like I said, if you (or just about anyone else for that matter) are interested, let me know and I'd be more than glad to set you up.

  • I cant uninstall the Microsoft ACPI Compliant Control Method Battery , pls help me

    hi my shows 100 % whem i plugged in and when i plugged out its goes well but after 15 mins laptop automaticaly shut down and i hav to start again with power button but it doesnt work , so when i going to apply the other mehod which is uninstall the acpi battery control method i cant unisntall the component from battery so any help will be appreciated thx 

    babaadam
    I would recommend you take a look at the thread I am linking below where a user Rohit Siddegowda posted a thorough post on how to uninstall and fix the Microsoft ACPI Compliant Control Method Battery
    Disabling the Microsoft ACPI Compliant Control Method Battery?
    http://answers.microsoft.com/en-us/windows/forum/windows_8-hardware/disabling-microsoft-acpi-complia...
    If you have any further questions or concerns please re-post
    Please click the "Thumbs Up" on the bottom right of this post to say thank you if you appreciate the support I provide!
    Also be sure to mark my post as “Accept as Solution" if you feel my post solved your issue, it will help others who face the same challenge find the same solution.
    Dunidar
    I work on behalf of HP
    Find out a bit more about me by checking out my profile!
    "Customers don’t expect you to be perfect. They do expect you to fix things when they go wrong." ~ Donald Porter

  • Bind an inputFile value to a data control methods parameter

    Hello I am trying to create a InputFile (ADF Faces) which is linked to a data control method. The method reads a specified file and returns the content which is then displayed in table form.
    <br><br>
    I have a filereader Class with the following method:
    <i>public List<FileInQuestion> returnFileContents(String fileName)</i>
    <br><br>
    I have created a data control based on this Class. From the JSF page, under the data control palette I can drag on may parameter 'FileName' (as input text) and my method (as command button) and finally the return type 'FileInQuestion' (as read only table). This all works fine and when I type a filename in and hit the button it displays the contents in a table.
    <br><br>
    Now the problem is that I want to base the input parameter on the value of the InputFile component. But when I drag and drop the 'fileName' parameter onto the canvas, it doesn't give me the option to create as an input file!
    <br><br>
    Please could someone tell me how I manually link (bind) the inputFile component to the 'fileName' parameter?
    <br><br>
    Sorry if a bit long winded!!
    <br><br>
    Thanks Dan
    Message was edited by:
    user593073

    Thanks Frank but I need to get at the text value returned from the inputfile component. I did what you said with the following results:
    <br><br>
    I started with a inputtext field, command button and read only table. When I entered a value (in this case 'C:\data\contacts.txt' ) into the inputtext field and hit the command button the table displayed the expected results (for logic please see my 1st post).
    <br><br>
    I then convert the inputtext component to a inputfile component in the way you suggested. I now rerun the application, browse to the same file and hit the command button, and then nothing!! no results.
    <br><br>
    I'm I missing something here?
    <br><br>
    Thanks
    <br><br>
    Dan

  • Period Control Method 01 and 03 Mid Month Convention

    Hi All,
    I am trying to create two different depreciation keys.
    One is with Period rule 01 i.e Pro rata at period start date. Example. If I create an asset any time during the month, the ordinary start depreciation should start at the beginning of the month.
    Secondly another deprecation key with period rule 03 i.e. prorata at mid period. Meaning that the ordinary start deprecation date should be from 15 of the month.
    I activate the " Use of Half Months in the Company Code" then the deprecation key with prorata at period start date is behaving like pro rata at mid period.
    Example:
    I created an asset that was capitalized 5/18. For book depreciation the start date should be 5/1 and for tax it should be 5/15. Both of the areas are showing 5/15. have i missed something?

    Issue Resolved
    Steps:
    1. In transaction OAVS define a new Per control (Z1).
    2. In transaction OAVH create the following: My fiscal year is from Aug-July
    3. Update transaction AFAMP, create a new period control method and assign it Z1/Z1/Z1/Z1
    4. Finally update the period control in the book depreciation key AFAMP.
                                                                                    D                   M                  Period
    Z1     At period start date              1     31     5
    Z1     At period start date              2     28     6
    Z1     At period start date              3     31     7
    Z1     At period start date              4     30     8
    Z1     At period start date              5     31     9
    Z1     At period start date              6     30     10
    Z1     At period start date              7     31     11
    Z1     At period start date              8     31
    Z1     At period start date              9     30     1
    Z1     At period start date              10     31     2
    Z1     At period start date              11     30     3
    Z1     At period start date              12     31     4

  • NAC Port Control Method : MAC or Linkup ?

    Hi,
    We are running OOB Virtual-GW and I'm wondering what control method you people are using ? MAC notification or Link-Up notification ?
    Our Cisco engineer told us to use MAC-Notif but I would like to have your thought about this ...
    Right now we are using Link-Up and we are experiencing problems... especially with the delay being too long before port is switch back to Auth VLAN...
    Thanks.
    Dominic

    Search the discussions before posting. Your question has been asked and answered dozens of times before. You could save yourself time in the future, as you'd find the answer yourself.
    http://discussions.apple.com/thread.jspa?messageID=3830087&#3830087

  • DB name shortening algorithm probably needs more sophistication

    Hi,
    I think it might be wise to come up with a more sophisticated way to
    shorten the names when the class names and field names are too long. I
    ran into the following situation with a class called
    "AttributeCollection" with a HashSet field called "attributes". The
    elements of attributes are instances of "Attribute" a simple persistent
    class with a "name" and "value" string. Changing the field name to
    "set" fixed it. The only reason that I found the problem relatively
    easily is that I remembered observing the shortening algorithm (snip) in
    another harmless case.
    David Ezzio
    Yankee Software
    E:\MyCode>kodoschematool -action refresh
    Refreshing schema for type "class
    com.ysoft.jdo.attributes.AttributeCollection" and known subclasses...
    CREATE TABLE ATTRIBUTECOLLECTION_ATTRIBUTEX (ATTRIBUTESX NUMBER, JDOIDX
    NUMBER)
    CREATE INDEX ATTRIBUTECOLLECTION_ATTRIBUTEX ON
    ATTRIBUTECOLLECTION_ATTRIBUTEX (ATTRIBUTESX)
    CREATE INDEX ATTRIBUTECOLLECTION_ATTRIBUTEX ON
    ATTRIBUTECOLLECTION_ATTRIBUTEX (JDOIDX)
    java.sql.SQLException: ORA-00955: name is already used by an existing
    object
    E:\MyCode>kodoschematool -action refresh
    Refreshing schema for type "class
    com.ysoft.jdo.attributes.AttributeCollection" and known subclasses...
    CREATE TABLE ATTRIBUTECOLLECTION_SETX (SETX NUMBER, JDOIDX NUMBER)
    CREATE INDEX ATTRIBUTECOLLECTION_SETXSETX ON ATTRIBUTECOLLECTION_SETX
    (SETX)
    CREATE INDEX ATTRIBUTECOLLECTION_SETXJDOIDX ON ATTRIBUTECOLLECTION_SETX
    (JDOIDX)
    CREATE TABLE ATTRIBUTECOLLECTIONX (JDOIDX NUMBER NOT NULL, JDOLOCKX
    NUMBER, JDOCLASSX VARCHAR2(255), PRIMARY KEY (JDOIDX))
    Refreshing schema for type "class com.ysoft.jdo.attributes.Attribute"
    and known subclasses...
    CREATE TABLE ATTRIBUTEX (JDOIDX NUMBER NOT NULL, JDOLOCKX NUMBER,
    JDOCLASSX VARCHAR2(255), NAMEX VARCHAR2(255), VALUEX VARCHAR2(255),
    PRIMARY KEY (JDOIDX))

    Hi,
    I had the same problem about a month ago. Patrick Linskey suggested in his post from 12.09.01 "Re: Schematool problem" to "use the 'table' class-level extension in
    your system.jdo file". But this didn't seem to work, so I shortened the name of the class to fix it.
    Here is Patricks original post:
    Martin,
    As Joe Mannerling pointed out earlier, the problem that you are seeing
    is related to a bug in Kodo's table name generation algorithm. In
    order to keep table and column names below database limits (Oracle,
    for example, has a 30 character limit), Kodo truncates names to this
    length. Unfortunately, it performs this truncation after assembling
    the name, so if a class name is over a certain length, then name
    conflicts such as those that you are seeing will arise.
    We are working on a better name generation algorithm to resolve this
    problem. In the mean time, use the 'table' class-level extension in
    your system.jdo file:
    <?xml version="1.0"?>
    <jdo>
         <package name="de.mediateam.quizmaster.data">
              <... snip ...>
              <class name="Question">
                   <field name="prerequisites">
                        <collection element-type="Question" />
                   </field>
              </class>
              <class name="TextQuestion" persistence-capable-superclass="Question" />
    <!-- change this section -->
              <class name="MultipleChoiceQuestion"
    persistence-capable-superclass="Question" >
                   <extension key="table" value="MCQuestionX"/>
    </class>
    <!-- end changes -->
              <class name="BooleanQuestion" persistence-capable-superclass="Question" />
              <... snip ...>
         </package>
    </jdo>
    Thanks, and good luck.
    Cheers
    Martin
    On Thu, 18 Oct 2001 08:44:11 -0400, David Ezzio <[email protected]> wrote:
    Hi,
    I think it might be wise to come up with a more sophisticated way to
    shorten the names when the class names and field names are too long. I
    ran into the following situation with a class called
    "AttributeCollection" with a HashSet field called "attributes". The
    elements of attributes are instances of "Attribute" a simple persistent
    class with a "name" and "value" string. Changing the field name to
    "set" fixed it. The only reason that I found the problem relatively
    easily is that I remembered observing the shortening algorithm (snip) in
    another harmless case.
    David Ezzio
    Yankee Software
    E:\MyCode>kodoschematool -action refresh
    Refreshing schema for type "class
    com.ysoft.jdo.attributes.AttributeCollection" and known subclasses...
    CREATE TABLE ATTRIBUTECOLLECTION_ATTRIBUTEX (ATTRIBUTESX NUMBER, JDOIDX
    NUMBER)
    CREATE INDEX ATTRIBUTECOLLECTION_ATTRIBUTEX ON
    ATTRIBUTECOLLECTION_ATTRIBUTEX (ATTRIBUTESX)
    CREATE INDEX ATTRIBUTECOLLECTION_ATTRIBUTEX ON
    ATTRIBUTECOLLECTION_ATTRIBUTEX (JDOIDX)
    java.sql.SQLException: ORA-00955: name is already used by an existing
    object
    E:\MyCode>kodoschematool -action refresh
    Refreshing schema for type "class
    com.ysoft.jdo.attributes.AttributeCollection" and known subclasses...
    CREATE TABLE ATTRIBUTECOLLECTION_SETX (SETX NUMBER, JDOIDX NUMBER)
    CREATE INDEX ATTRIBUTECOLLECTION_SETXSETX ON ATTRIBUTECOLLECTION_SETX
    (SETX)
    CREATE INDEX ATTRIBUTECOLLECTION_SETXJDOIDX ON ATTRIBUTECOLLECTION_SETX
    (JDOIDX)
    CREATE TABLE ATTRIBUTECOLLECTIONX (JDOIDX NUMBER NOT NULL, JDOLOCKX
    NUMBER, JDOCLASSX VARCHAR2(255), PRIMARY KEY (JDOIDX))
    Refreshing schema for type "class com.ysoft.jdo.attributes.Attribute"
    and known subclasses...
    CREATE TABLE ATTRIBUTEX (JDOIDX NUMBER NOT NULL, JDOLOCKX NUMBER,
    JDOCLASSX VARCHAR2(255), NAMEX VARCHAR2(255), VALUEX VARCHAR2(255),
    PRIMARY KEY (JDOIDX))

  • Want to know more details about control breaks in reports

    hello all
    i want to know more details about control breaks AT First,
                                                                          AT Last,
                                                                          AT New,
                                                                          At End of and on change .
    can anybody tell with examples?

    Hi Swamy,
       Check the following.
    Control break statements are used to create statement blocks which process only specific table lines the LOOP – ENDLOOP block.
    You open such a statement block with the control level statement AT and close it with the control level statement ENDAT. The syntax is as follows:
    Table should be sorted when you use control-break statements
    You can break the sequential access of internal tables by using these statements.
    Syntax:
    At first.
    <Statement block>
    Endat.
    This is the first statement to get executed inside the loop (remember control break statements are applicable only inside the loop)
    So in this block you can write or process those statements which you want to get executed when the loop starts.
    At New carrid.
    Write:/ carrid.
    Endat.
    In this case whenever the new carrid is reached, carrid will be written.
    At End of carrid.
    Uline.
    Endat.
    In this case whenever the end of carrid is reached, a line will be drawn.
    At Last.
    Write:/ ‘Last Record is reached’.
    Endat.
    Processing of statements within this block is done when entire processing of entire internal table is over. Usually used to display grand totals.
    You can use either all or one of the above control break statements with in the loop for processing internal table.
    At end of carrid.
    Sum.
    Endat.
    In above case the statement SUM (applicable only within AT-ENDAT) will sum up all the numeric fields in internal table and result is stored in same internal table variable.
    Hope this helps you.
    Any queries, get back to me.
    Regards,
    Chandra Sekhar

  • Regard ora-01207: How Oracle judge file is more recent than control file - old control file

    ORA-00283: recovery session canceled due to errors
    ORA-01122: database file 2 failed verification check
    ORA-01110: data file 2: '/tmp/auxsys.dbf_rman'
    ORA-01207: file is more recent than control file - old control file
    How Oracle judge file is more recent than control file - old control file, then it thrown out error ora-01207.
    It must compare data file with control file, but what compare?

    Begin from the beginning.
    Did you do a RESTORE DATABASE ?
    Or did you selectively restore datafiles ?
    Strange datafile name --- looks like it could have been a DATAFILECOPY done using rman.
    It is a very bad idea to have a datafile in /tmp   On some OSs, /tmp may get cleared of files on a reboot.
    Hemant K Chitale

  • Can we have more than one service method in a single servlet

    can we have more than one service method in a single servlet?explain with example

    No, you can only have one service method. However, you can have it process two different requests as follows.
    Lets say you have two JSP pages. Put a hidden text value in one called jsp1 and a hiddent text value in the other called jsp2 (example: <input type="hidden" name="jspPage" value="jsp1"> and <input type="hidden" name="jspPage" value="jsp2">.
    Then in your service method, read in request.getParameter("jspPage") to determine if its jsp1 or jsp2 and call up the appropriate logic to process them separately.

  • Which language is better to develop the software that controls the Tektronix-Sony 370A Curve tracer and how to approach it?

    Which language is better to develop the software that controls the Tektronix-Sony 370A Curve tracer and how to approach it. I a a fresher in this field. Please any one help us developing the software.

    If you're looking to develop a driver for the instrument, one already exists and can be download here or you can get it off of the driver disk that comes with LabVIEW. If you're asking for the best language in which to write an application program that uses the driver, the obviously the answer is going to be LabVIEW. Note that you might get a different answer if you post the question to a Visual Basic or C++ forum but those answers would be wrong.
    Message Edited by Support on 11-26-2008 01:33 PM
    Message Edited by Support on 02-17-2009 09:30 AM

  • Where can I find more information on Control and Simulation Software?

    Where can I find out more information on Control and Simulation Software for G (GSIM)?
    I am currently programming a PID controller using a Siemens PLC. I have installed LabVIEW DataLogging and Supervisory Control Module which allows LabVIEW to interface with my PLC.
    Would appreciate if you could offer me some advice on whether it would be possible for the PLC PID controller to control a first order process model created using GSIM? Please email me at [email protected] if you could offer me any advice or assistance.
    Merry Christmas and a Happy New Year.
    Best regards
    Donald

    I see that you posted to the DSC forum, but you did not get GSIM information. Below is the link for the user manual for the Control and Simulation Toolkit. It is the single best source for info on the toolkit.
    http://digital.ni.com/manuals.nsf/webAdvsearch/63E23F9BA1494FE98625665E00635898?OpenDocument

  • ORA-00338: ORA-00338: log 2 of thread 1 is more recent than control file

    Hi, I am getting error "ORA-00338: log 2 of thread 1 is more recent than control file"
    My os is RHEL 5.5, 64-bit
    Database version is 11.1.0.7
    Help !

    VinodNagpure wrote:
    But we were not cloning this instance, and the instance which was being cloned is ok. The database as well as the application is open. The issue is with another database running on the same server.I suspect that the "working" DB has a file that over-wrote a file of the DB reporting the errors.
    *NIX OS is not idiotproofed against somebody fumble fingering file name.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • Enum control not editable in specify module

    I created an enum control in LV8.0 and am trying to use the VI in TS3.5 as an action.  When I specify module, the drop-down control for the enum is missing and the value is can not be editted.  I've tried changing names of enum choices to as simple as ""one", "two"", but still can not edit it in TS.

    Hey Josephio,
    Have you wired the enum up to the connector pane in LabVIEW as an input?  TestStand will not recognize the enum control from your VI (or any other controls or indicators, for that matter) until you wire them to the LabVIEW connector pane. 
    Are you seeing the enum at all in TestStand's specify module window?  Is it showing up as an input, however the dropdown window doesn't appear?  Please post a screenshot if the above advice doesn't help you and I'd be happy to assist you further from here.
    Derrick S.
    Product Manager
    NI DIAdem
    National Instruments

Maybe you are looking for

  • Photo Sharing

    I installed a new software release on Apple TV AND a new software iTunes release on my Windows 7 laptop.  Photo sharing no longer works. 

  • Problem with Tabs Palette

    Perhaps someone can help me. I hope this isn't a problem that only I have run across. There's no consistency to this but every so often, my Tabs Palette stops working. Where I had been able to set tabs within a document, suddenly I can't add, move, o

  • GetAppProperty Method

    Hi! Where can I get a complete list of all the keys to pass in as input parameter to Midlet.getAppProperty() method? TIA! Regards swinging

  • Scenebuilder not working with FXML that works fine otherwise

    Hi ~ I'm using the Mac version of Scenebuilder (1.0), integrated with NetBeans, and although it works fine for simple (sample) apps, for my application it does not. IOW, I can run my application fine, looks great, but Scenebuilder gives the following

  • Javascript is required for the Electronic Delivery system.

    I use VPN to access the remote server, and the software will downloaded in the remote server, but when I go to the Oracle e-delivery, and press continue, I got a message: Javascript is required for the Electronic Delivery system. What's wrong with me