Send GPIB Read function XY graph data

Hello

I'm really new to LabVIEW, so it is probably an easy one, but I'm having a serious problem, try to understand this one. How to send data from GPIB playback to a graph function, let's say the XY graph. My data consist of a string of numbers, separated by commas, alternating between X and y values for example:

0, 0, 0.1, 0.2, 0.2, 0.4, 0.3, 0.9, 0.4, 1.6, 0.5, 2.5, 0.6, 3.6, 0.7, 4.9

would figure a parable. I tried to connect the output (data) from BPIB playback to XY graph, but I get an error. what I have to do something else before I send these data to the graph XY? Thanks for your suggestions.

r.

You must specify the data type of the worksheet to the table string. It's a constant DBL table 1 d. Go to the table palette and drag the Constant table to the block diagram. Go digital and made palette drag a digital constant the block diagram. Right-click on the digital constant, then select representation > DBL. Drag the digital constant within the constant table. It wire upward.

You should check out the tutorials.

Tags: NI Software

Similar Questions

  • Implement a graph data Structure

    First time posting here, I was introduced to LabVIEW while participating in the FIRST.

    I was reading on The graph data Structuresand wanted to see if I could use them in LabVIEW, because it looked like a good way to convey information. Unfortunately, it seems that the right lane until I tried will not work. I tried to create a typedef that consisted of a group of two elements, an array of linked nodes and an array of edge weights. Unfortunately, I found that you can not have recursive types, under the related nodes in the typedef table should be the same as the typedef. I know not why it's after a bit of searching, but I was wondering if there was a way around this problem. From my research, it seems like using a class root and a child class is a way possible, but advance to do.

    I currently think of all representing nodes associated to a knot like an array of clues that you can use to get the chart referenced nodes. This means that the chart cannot be sorted or otherwise modified so that index numbers does not work, you can add objects to the end. Is this just thought, or there at - it another way to go about this?

    Not an easy problem, as the recurrence is not native to LV programming (much less any other language I've used except assembler).

    But the solution to your problem of index number is to use the 'key '. Each node must have a unique key (number), so that you can address it (search key) even if the table is sorted in some way.

    Again, it is not native to LV this means you will have to program the logic of other languages use this yourself (Pseudo-pointeurs, handles, keys, hashes).

    A practical side: I would not implement the graph by BT himself but access a graph from another source (database?) via an interface (ActiveX, .NET). To learn a little more on how to do this, try to play around with the tree control (this is a limited graph).

    Felix

  • ERROR CODE 6 GPIB READ

    Hello

    I enclose a VI that measures and displays capacity depending on the tension swept to a "keithley 590" meter.  In the llb file fix, I use the vi called "590-CV Measurement.vi.

    I get the error 'error Code 6 in reading GPIB in 590-CV Meaurement.vi.

    The VI is supposed to display the data as a table and as a graph. I see the sweeping of instrument keithley tension but no data is displayed and the code 6 error which means 'Operation of e/s abandoned' as indicated

    http://zone.NI.com/reference/en-XX/help/371361B-01/lverror/gpib_error_codes/

    is displayed. Could someone help me please on what is the problem?

    Thank you very much

    Poli

    Hey polished.

    Thanks for the files.  I searched through the conductor of the intrument and the spy file to establish a correlation between the behavior we see with function calls.  I would that try you two things and I would like to know the results.

    First of all open the 590 CV - Measurement.vi and discovers the block diagram.  In the Structure of the event, select the event "Run".  Here, on the second line of function calls you fine one labelled GPIB Read.  The upper part of this VI has a terminal of Timeout.  Create a digital constant of 0 and it wire to this Terminal.  Run your program and see what see you.

    Once this test is done, delete the changes (the addition of the digital constant).  Then change the numerical value that is connected to the same GPIB Read command any value less than 20000, it is the value (10000 or something).  This will change the number of bytes, the function tries to call and hopefully prevent expire.

    Let me know what you get results.

  • Problems syncing with GPIB Read on a SR400

    I'm using LabView to control a meter of photons SR400 of Stanford research systems. Can control the box easily, I'm having problems with reading the correct data in the box of. I get incorrect values of 0 ', 6 and 134' rather than real account numbers. I see the correct values on the display screen, but GPIB reads bad.

    It's what I've tried and what I've learned:

    • At first, I was getting random 6 error LabVIEW (from reading GPIB) which would prevent my program to run. To resolve this problem, I put a case Error statement after she and simply write the word ERR in my data file and move on to my next point data. This stopped my cessation program, but started badly reading the values using reading GPIB.

    • The SR400 takes data for N periods on two channels, A & B. The first column of the channel A every 6 seconds and the rest of the columns on both channels would be regular values. However, the problem got worse and my first column of the channel began to write 0s, the second column of the channel A would be 6 s with some 134 s and the rest of the columns would be nice. But, if I had only 1 time for each column, I now have data lost on two channels A and B. A channel would be of 0 s and channel B 6s and 134 s.

    • This problem is sporadic. I can't control when it arrives. Today he works. Yesterday's didn't.

    • It seems to be a timing issue, but I don't know what I can do about it.

    My questions for you are:

    1. Is it better to use GPIB or VISA to communicate? I use GPIB cabling, so be it.

    2. How can you correct problems of timing in GPIB?

    3. Any suggestions on how to improve this?

    I joined code of 8.2 and 2011. I'm trying to convert our code in 2011 to see if it solves the problems. The VI with GPIB Read is CollectData/TakeData and it is called by a VI, where he gets called frequently, but the reading and writing of all MTP recharge time is done by data files CollectData/Take.

    Thank you all in advance for your help. I'm a grad student and still learn from these electronic and LabVIEW.

    Start by lowering of the busspeed. I think that 1 uS is more fast enough for the handshake and then I would disable autopolling.
    You can do it in Max settings for your gpib card.
    Low level visa uses gpib, but never use it directly. In any case the speed is completely determined by the slowest device on the bus, complaining the sr400

  • The VISA read function is not read the bytes specified in the buffer zone

    I created a program that continuously acquire data of the inverter. But, the "Reading of VISA" function is not rreading all bytes of the buffer, which is a big problem because the way my work programme is it will extract the specific buffer bytes and convert these values in voltage and current values.

    I specified the number of bytes that I want to read the buffer as for example I want to read 21 bytes. But, even if there are 21 bytes in the buffer, the read function VISA read only 9 bytes. Im not using any character of endpoints so this is weird. I'm using LabVIEW 2011.

    Is attached a photo of my program and the results.

    You still have the active stop character.  You must connect up to a FAKE at the entrance of termination character activate on the Serial Port to set it up.

  • Can I put a READ function in a structure of matter TRUE or FALSE?

    Hello

    I have a vi that operates as a controller for a mechanical system of engines.  There are several sensors of various types, make its contribution to the vi, including encoders, whose period is measured.  The attached vi is the period of encoder part of measure. It measures 15 periods and tells me that the average of the 15 with each iteration of the loop.

    In my application, the encoder measurement period is useless unless the vi knows ALL OTHER sensors in the hardware configuration to measure values in the desired interval.  For example, the sensors A, B and C must all measure between 5 and 10.  If they are all shows values between 5-10, then we want the value to encode it to read and display.  If only one of the sensors, say, is action 12, then, we don't want the value of period for READING or further processed.  So, it is easy to set up the sensors A, B, C, to give a TRUE or FALSE based on what they are handy or not, and if all 3 are TRUE, then, this value can easily be passed to the structure of case that holds my function of READING for the period.  What is a good way to do this?  The goal is to eliminate some unnecessary runtime that would consume the period READ function, as well as all the calculations that are performed on the period collected value.  The data period are of no use if one of the other sensors is not in the correct range.

    If one of the other sensors is out of reach, we want to skip reading encoder altogether.  So, it is easy to structure a Boolean in my vi as indicated in the attachment.  If I do it this way, it throws an error, or just skip READING until the BOOLEAN value is true once again?  Is there a better way to prevent PLAYBACK to occur if one of my other values of the sensor is not in the correct range?

    Thank you

    Dave

    Of course, you can put a reading within a box structure. For your application, simply check that your sensors are all at the beach (palette of comparisons), AND the T/F and use the result of this for the structure of your business. (If you already have the cheque to its scope, I can't see here because you have 5 subVIs that I can not open here.

    Cameron

  • When I send a text message and mobile data are off, it is not given, but I do not see this message for a few minutes. I can then refer using "send as a text message. How can I 'send as a text message' in the first place?

    When I send a text message and mobile data are off, it is not given, but I do not see this message for a few minutes. I can then refer using "send as a text message. How can I 'send as a text message' in the first place?

    Disable the iMessage?

  • How can I hide status ' Reading/waiting/transfer of data...' » ?

    Firefox 34.0.5 Windows 7
    I want to hide the status of "Reading/waiting/transfer of data..." "which shows at the bottom left of the browser window
    I found a solution in this archived thread, https://support.mozilla.org/en-US/questions/942499and I applied it, but it doesn't seem to work

    Thanks much el - cor

    I used the code you posted on 969955 page
    [ https://support.mozilla.org/en-US/questions/969955 ]

    Strangely enough I need to disable/enable Adblock Plus after, but it works


    @namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); /* only needed once */

    .statuspanel-label {background:#FF9!important;color:black!important;font-family:"DejaVu Sans Mono"}

    statuspanel {display:none!important}
    statuspanel {max-width:90%!important}

    statuspanel[type="overLink"] .statuspanel-label
    statuspanel[type="status"] .statuspanel-label[value^="Looking"]
    statuspanel[type="status"] .statuspanel-label[value^="Connect"]
    statuspanel[type="status"] .statuspanel-label[value^="Waiting"]
    statuspanel[type="status"] .statuspanel-label[value^="Transfer"]

  • read and medium n data from text file

    I acquire [a waveform of reading] oscilloscope digital data that is stored in a column in a text file.

    I need to read selectable amount of data at average/parcel them points.

    So basically I want to have a text file with millions of data points, but I want to draw not to say that all 1000. data point. I tried a lot of things I found here on the forum, but as I'm new to LabView, none of them really worked.

    Does anyone have a suggestion.

    Thank you.


  • GPIB read gel when running vi without light debugging... (it works with light)

    I have a gpib read that spits out two values to an offset. It is in a loop which is defined by the initial report final and the size of the stage settings. My question is, why don't him freezes reading gpib (or don't disable; whenever I turn on the light of debugging (once it's been run), it "lights" only until the gpib read and nothing else). I replaced the gpib read with visa read, it freezes over, but it saves only zeros (when I can clearly see my system out certain values). Any help would be appreciated.

    * There is a similar topic on the light of debugging and reasoning has been designed to be a race condition. but I don't see how my situation is a race condition.

    Thank you

    Ko.

    It is resolved. It has nothing to do with the program. There was a problem of interference with another parallel machine. Once I got rid of this connection, everything worked like a charm.

    Thank you all for your valuable contributions.

    -Ko.

  • GPIB read and write commands of Agilent 54642 oscilloscope

    Dear friends,

    I would like to acquire a waveform of Agilent 54642 ocsilloscope in the LabView 7.1 via GPIB program. Can anyone mention the GPIB read and write commands for the oscilloscope even?

    Furthermore, on the subject of the LabView program, is it fair to place blocks to write two GPIB followed by a single GPIB read block (everything series), as well as an indicator, in order to check the waveform in LabView?

    Kindly help me with your answers...

    Look forward to y...

    Thank you very much in advance...

    Marion

    Download the 7.0 driver that Albert gave the link to, make sure that you have installed NI-VISA and run the getting started sample which is part of the pilot. If it does not, please elaborate on the error codes that are reported.

  • Unable to read the security descriptors data stream

    Whenever I start my computer runs CHKDSK - it says checking file system on E: and then he said that it should be checked for consistency. It works until stage 3 when he says 'impossible to read the security descriptors data stream' how to fix this?

    I tried chkdsk e:/r and it runs before step 3 when I get the "unable to read the security descriptors data stream" and it goes no further.

    I also tried fsutil dirty query e:- but it says something about a parameter incorrect and not if the volume is dirty or clean.

    Then I tried chkdsk e:/f/x - that always gives me the same mistake about it being an incorrect setting.

    As far as I know there is absolutely nothing on E:, I didn't even know that there was an additional drive. Right now I have it turned off so that I can use my computer. It seems to work fine without it. I read an article that said that if I can't fix e: with chkdsk which I have to do a low-level format of the reader? What's my next step? And I can do without the XP disc?

    The syntax

    fsutil dirty query e:

    is correct (except, of course, you try to use from the Recovery Console, where the fsutil command is not available).  Are you logged on as a user with administrative rights when you use fsutil?

    Similarly, the switches /f and/x are not available for chkdsk in the Recovery Console.

    See Recovery Console controls.

    Click on desktop then right-click on E: drive icon and select Properties.  What is indicated for:

    • File system
    • Space used
    • Free space
    • Capacity

    Now double click the icon for E: are shown files?  If not, click Tools > Folder Options > view and select the radio button "Show hidden files and folders" and uncheck "Hide protected files (recommended) operating system.  Now that you see all the files?

    Everything you read 'low level of shaped' is nonsense.  Any modern PC drive cannot be low level formatted by end users.  You can read this, but there is really no necessary even to "zero fill" your drive E: http://seagate.custkb.com/seagate/crm/selfservice/search.jsp?DocId=203931 (I have not checked to see if the WD tools rescuer has similar characteristics to SeaTools for DOS).

    If you are convinced that there is nothing of value on E (for example, installation of backup or restore), you can either format by right-clicking on the drive icon in my computer and selecting "format" or you can start disk management as described previously and use either in electronic format or delete the partition completely.  If you delete the partition, space becomes "unallocated".

    Because I guess C is your system drive (where Windows is), you may be able to use the diskpart tool to extend the partition F to use the unallocated space left if you decide to remove E well it's much easier (and safer) to do with disk management third-party tools such as Easeus Partition Manager free : http://www.partition-tool.com/personal.htm

  • On the forms send us and receive in return, data in the form of fields will be not print.  We can view the data, but the fields to print Virgin.  How can I fix it?

    On the forms send us and receive in return, data in the form of fields will be not print.  We can view the data, but the fields to print Virgin.  How can I fix it?

    OK, it's different. These text boxes are (at least engineering point of view) not considered form data, they are annotations (or markup). On your print dialogue box, you will see a group of "Comments & Form". Make sure that the first control is set to "Document and annotations:

    After this change, you should see the markup of your impressions.

  • run the Idoc function in the data file returned by the service of GET_FILE

    Hello

    I'm new to this forum, so thank you in advance for any help and forgive me of any error with the post.

    I'm trying to force the execution of a custom Idoc function in a data file Complutense University of MADRID, when this data file is requested from the University Complutense of MADRID through service GET_FILE.

    The custom Idoc function is implemented as a filter of the computeFunction type. One of the datafile has appealed to my custom Idoc function:
    * < name wcm:element = "MainText" > [! - $myIdocFunction ()-] < / wcm:element > *.

    The data file is then downloaded with CRMI via service GET_FILE, but the Idoc function is not called.

    I tried to implement another filter Idoc type sendDataForServerResponse or sendDataForServerResponseBytes, that store objects cached responseString and responseBytes, personalized in order to look for any call to my function in the response object Idoc, eventually run the Idoc function and replace the output of the Idoc in the response. But this kind of filter will never run.

    The Idoc function myIdocFunction is executed correctly when I use WCM_PLACEHOLDER service to get a RegionTemplate (file .hcsp) associated with the data file. In this case, the fact RegionTemplate refers to the element of "MainText" data file with <!-$wcmElement ("MainText")->. But I need to make it work also with service GET_FILE.

    I use version 11.1.1.3.0 UCM.

    Any suggestion?
    Thank you very much
    Francesco

    Hello

    Thank you very much for your help and sorry for this late reply.

    Your trick to activate the complete detailed follow-up was helpful, because I found out I could somehow use the filter prepareForFileResponse for my purpose and I could also have related to the implementation of the native filter pdfwatermark. PdfwFileFilter .

    I managed to set up a filter whose purpose is to force the Idoc assessment of a predefined list of functions Idoc on the output returned by the service GET_FILE. Then I paste the code I have written, in which case it may be useful for other people. In any case, know that this filter can cause performance problems, which must be considered carefully in your own use cases.

    First set the filter in the set of filters in file .hda from your device:

    Filters @ResultSet

    4

    type

    location

    parameter

    loadOrder

    prepareForFileResponse

    mysamplecomponent. ForceIdocEvaluationFilter

    null

    1

    @end

    Here is a simplified version of the implementation of the filter:

    / public class ForceIdocEvaluationFilter implements FilterImplementor {}

    public int doFilter (workspace ws, linking DataBinder, ExecutionContext ctx) survey DataException, ServiceException {}

    Service string = binder.getLocal ("IdcService");

    String dDocName = binder.getLocal ("dDocName");

    Boolean isInternalCall = Boolean.parseBoolean (binder.getLocal ("isInternalCall"));

    If ((ctx instanceof FileService) & service.equals ("GET_FILE") &! isInternalCall) {}

    FileService fileService = ctx (FileService);

    checkToForceIdocEvaluation (dDocName, fileService);

    }

    continue with other filters

    Back to CONTINUE;

    }

    ' Private Sub checkToForceIdocEvaluation (String dDocName, FileService fileService) throws DataException, ServiceException {}

    PrimaryFile file = IOUtils.getContentPrimaryFile (dDocName);

    Ext = FileUtils.getExtension (primaryFile.getPath ());

    If (ext.equalsIgnoreCase ("xml")) {}

    forceIdocEvaluation (primaryFile, fileService);

    }

    }

    forceIdocEvaluation Private Sub (file primaryFile FileService fileService) throws ServiceException {}

    String multiplesContent = IOUtils.readStringFromFile (primaryFile);

    Replacement ForceIdocEvaluationPatternReplacer = new ForceIdocEvaluationPatternReplacer (fileService);

    String replacedContent = replacer.replace (fileContent);

    If (replacer.isMatchFound ()) {}

    setNewOutputOfService (fileService, replacedContent);

    }

    }

    ' Private Sub setNewOutputOfService (FileService fileService, String newOutput) throws ServiceException {}

    File newOutputFile = IOUtils.createTemporaryFile ("xml");

    IOUtils.saveFile (newOutput, newOutputFile);

    fileService.setFile (newOutputFile.getPath ());

    }

    }

    public class IOUtils {}

    public static getContentPrimaryFile (String dDocName) survey DataException, ServiceException {queue

    DataBinder serviceBinder = new DataBinder();

    serviceBinder.m_isExternalRequest = false;

    serviceBinder.putLocal ("IdcService", "GET_FILE");

    serviceBinder.putLocal ("dDocName", dDocName);

    serviceBinder.putLocal ("RevisionSelectionMethod", "Latest");

    serviceBinder.putLocal ("isInternalCall", "true");

    ServiceUtils.executeService (serviceBinder);

    String vaultFileName = DirectoryLocator.computeVaultFileName (serviceBinder);

    String vaultFilePath = DirectoryLocator.computeVaultPath (vaultFileName, serviceBinder);

    return new File (vaultFilePath);

    }

    public static String readStringFromFile (File sourceFile) throws ServiceException {}

    try {}

    return FileUtils.loadFile (sourceFile.getPath (), null, new String [] {"UTF - 8"});

    } catch (IOException e) {}

    throw new ServiceException (e);

    }

    }

    Public Shared Sub saveFile (String source, destination of the file) throws ServiceException {}

    FileUtils.writeFile (source, destination, "UTF - 8", 0, "is not save file" + destination);

    }

    public static getTemporaryFilesDir() leader throws ServiceException {}

    String idcDir = SharedObjects.getEnvironmentValue ("IntradocDir");

    String tmpDir = idcDir + "custom/MySampleComponent";

    FileUtils.checkOrCreateDirectory (tmpDir, 1);

    return new File (tmpDir);

    }

    public static createTemporaryFile (String fileExtension) leader throws ServiceException {}

    try {}

    The file TmpFile = File.createTempFile ("tmp", "." + fileExtension, IOUtils.getTemporaryFilesDir ());

    tmpFile.deleteOnExit ();

    return tmpFile;

    } catch (IOException e) {}

    throw new ServiceException (e);

    }

    }

    }

    Public MustInherit class PatternReplacer {}

    Private boolean matchFound = false;

    public string replace (CharSequence sourceString) throws ServiceException {}

    Matcher m = expand () .matcher (sourceString);

    StringBuffer sb = new StringBuffer (sourceString.length ());

    matchFound = false;

    While (m.find ()) {}

    matchFound = true;

    String matchedText = m.group (0);

    String replacement = doReplace (matchedText);

    m.appendReplacement (sb, Matcher.quoteReplacement (replacement));

    }

    m.appendTail (sb);

    Return sb.toString ();

    }

    protected abstract String doReplace(String textToReplace) throws ServiceException;

    public abstract Pattern getPattern() throws ServiceException;

    public boolean isMatchFound() {}

    Return matchFound;

    }

    }

    SerializableAttribute public class ForceIdocEvaluationPatternReplacer extends PatternReplacer {}

    private ExecutionContext ctx;

    idocPattern private model;

    public ForceIdocEvaluationPatternReplacer (ExecutionContext ctx) {}

    This.ctx = ctx;

    }

    @Override

    public getPattern() model throws ServiceException {}

    If (idocPattern == null) {}

    List of the functions = SharedObjects.getEnvValueAsList ("forceidocevaluation.functionlist");

    idocPattern = IdocUtils.createIdocPattern (functions);

    }

    Return idocPattern;

    }

    @Override

    protected String doReplace(String idocFunction) throws ServiceException {}

    Return IdocUtils.executeIdocFunction (ctx, idocFunction);

    }

    }

    public class IdocUtils {}

    public static String executeIdocFunction (ExecutionContext ctx, String idocFunction) throws ServiceException {}

    idocFunction = convertIdocStyle (idocFunction, IdocStyle.ANGULAR_BRACKETS);

    PageMerger activeMerger = (PageMerger) ctx.getCachedObject("PageMerger");

    try {}

    String output = activeMerger.evaluateScript (idocFunction);

    return output;

    } catch (Exception e) {}

    throw the new ServiceException ("cannot run the Idoc function" + idocFunction, e);

    }

    }

    public enum IdocStyle {}

    ANGULAR_BRACKETS,

    SQUARE_BRACKETS

    }

    public static String convertIdocStyle (String idocFunction, IdocStyle destinationStyle) {}

    String result = null;

    Switch (destinationStyle) {}

    case ANGULAR_BRACKETS:

    result = idocFunction.replace ("[!-$","<$").replace("--]", "$="">" "]");

    break;

    case SQUARE_BRACKETS:

    result = idocFunction.replace ("<$", "[!--$").replace("$="">", "-] '");

    break;

    }

    return the result;

    }

    public static model createIdocPattern ( list idocFunctions) throws ServiceException {}

    If (idocFunctions.isEmpty ()) throw new ServiceException ("list of Idoc functions to create a template for is empty");

    StringBuffer patternBuffer = new StringBuffer();

    model prefix

    patternBuffer.append ("(\\ [\\!--|)")<>

    Features GOLD - ed list

    for (int i = 0; i)

    patternBuffer.append (idocFunctions.get (i));

    If (i

    }

    model suffix

    patternBuffer.append ("") (. +?) (--\\]|\\$>)");

    String pattern = patternBuffer.toString ();

    log.trace ("Functions return Idoc model", model);

    Return Pattern.compile (pattern);

    }

    }

    public class ServiceUtils {}

    Private Shared Workspace getSystemWorkspace()}

    Workspace workspace = null;

    WsProvider provider = Providers.getProvider ("SystemDatabase");

    If (null! = wsProvider) {}

    workspace = wsProvider.getProvider ((workspace));

    }

    Returns the workspace;

    }

    getFullUserData private static UserData (String userName, cxt ExecutionContext, workspace ws) throws DataException, ServiceException {}

    If (null == ws) {}

    WS = getSystemWorkspace();

    }

    UserData userData is UserStorage.retrieveUserDatabaseProfileDataFull (name of user, ws, null, cxt, true, true);.

    ws.releaseConnection ();

    return userData;

    }

    public static executeService (DataBinder binder) Sub survey DataException, ServiceException {}

    get a connection to the database

    Workspace workspace = getSystemWorkspace();

    Look for a value of IdcService

    String cmd = binder.getLocal ("IdcService");

    If (null == cmd) {}

    throw new DataException("!csIdcServiceMissing");

    }

    get the service definition

    ServiceData serviceData = ServiceManager.getFullService (cmd);

    If (null == serviceData) {}

    throw new DataException (LocaleUtils.encodeMessage ("!")) csNoServiceDefined", null, cmd));

    }

    create the object for this service

    The service = ServiceManager.createService (serviceData.m_classID, workspace, null, Binder, serviceData);

    String userName = 'sysadmin ';

    UserData fullUserData = getFullUserData (username, service, workspace);

    service.setUserData (fullUserData);

    Binder.m_environment.put ("REMOTE_USER", username);

    try {}

    init service do not return HTML

    service.setSendFlags (true, true);

    create the ServiceHandlers and producers

    service.initDelegatedObjects ();

    do a safety check

    service.globalSecurityCheck ();

    prepare for service

    service.preActions ();

    run the service

    service.doActions ();

    } catch (ServiceException e) {}

    } {Finally

    service.cleanUp (true);

    If (null! = workspace) {}

    workspace.releaseConnection ();

    }

    }

    }

    }

  • Reading XML using XSLT data

    I have a problem of reading xml using XSLT data. There is a CASE - 900000016, has two sequences. SEQ NO1 and NO2 SEQ. Each sequence has an activity. I try to display the info of the activity under corresponding sequences.

    SEQ 01

    Activity

    SEQ 02

    Activity

    This is the xml file.

    <? XML version = "1.0" encoding = "utf-8" standalone = "yes"? >
    < case >
    < EventList >
    < PAEvent >
    < CASENO > 900000016 < / CASENO >
    < > 01 SEQ_NO < / SEQ_NO >
    APPROVED < STATUS > < / STATUS >
    < REASON > < / REASON >
    < PR_NO > 506024 < / PR_NO >
    < SRV_BEG_DAT > 11/02/2010 < / SRV_BEG_DAT >
    < SRV_END_DAT > 11/02/2010 < / SRV_END_DAT >
    < / PAEvent >
    < PAEvent >
    < CASENO > 900000016 < / CASENO >
    < > 02 SEQ_NO < / SEQ_NO >
    APPROVED < STATUS > < / STATUS >
    < TYPE > < / TYPE >
    < REASON > < / REASON >
    < PR_NO > < / PR_NO >
    < SRV_BEG_DAT > 11/02/2010 < / SRV_BEG_DAT >
    < SRV_END_DAT > 28/02/2010 < / SRV_END_DAT >
    < / PAEvent >
    false < hasErrors > < / hasErrors >
    < / EventList >
    < ActivitiesList >
    < PAActivity >
    < CASE_NO > 900000016 < / CASE_NO >
    < > 01 SEQNO < / SEQNO >
    < ACTVTY_LN_NO > 03 < / ACTVTY_LN_NO >
    < ACTVTY_TYP >: < / ACTVTY_TYP >
    < UNIT_PRC > 16.2500 < / UNIT_PRC >
    < / PAActivity >
    < PAActivity >
    < CASE_NO > 900000016 < / CASE_NO >
    < > 02 SEQNO < / SEQNO >
    < ACTVTY_LN_NO > 01 < / ACTVTY_LN_NO >
    < ACTVTY_TYP > P < / ACTVTY_TYP >
    < UNIT_PRC > 0.0000 < / UNIT_PRC >
    < / PAActivity >
    false < hasErrors > < / hasErrors >
    < / ActivitiesList >
    < / Cases >


    XSLT code

    <? XML version = "1.0" encoding = "utf-8"? >
    < xsl: stylesheet version = "1.0" xmlns: xsl = "http://www.w3.org/1999/XSL/Transform" >
    < xsl: template match = "Case" >
    < div Id = "dvEvents" align = "center" >
    <!--list of events-->
    < table width = "75%" border = "0" >
    < style tr = "text-align: left;" background-color: gray; ">
    < td colspan = "8" class = "SmallBlackFontBolder" >
    < b > < /b > events
    < table >
    < /tr >
    < xsl: for-each select = "EventList/PAEvent" >
    < b >
    < class td = "SmallBlackFontBold" style = "" text-align: left; "width ="8% "> Seq No.: < table >"
    < class td = "SmallGreenFontBold" align = "left" width = "10%" >
    < xsl: value-of select = "SEQ_NO" / >
    < table >

    < class td = "SmallBlackFontBold" align = "left" width = "8%" > status: < table >
    < td align = "left" width = "11%" >
    < xsl: value-of select = "STATUS" / >
    < table >
    < /tr >

    < b >
    < td >
    <!--get the list of activities-->
    < xsl: for-each select = "Case/ActivitiesList/PAActivity" >
    < xsl: if test = "Case, EventList, PAEvent, SEQ_NO = case, ActivitiesList, PAActivity, SEQNO" >
    < table width = "75%" >
    < b >
    < class td = "SmallBlackFontBold" style = "" text-align: left; "width ="8% "> Seq No.: < table >"
    < class td = "SmallGreenFontBold" align = "left" width = "10%" >
    < xsl: value-of select = "Case, ActivitiesList, PAActivity, SEQNO" / >
    < table >
    Unit price < td >: < table >
    < td align = "left" width = "11%" >
    < xsl: value-of select = "Case, ActivitiesList, PAActivity, UNIT_PRC" / >
    < table >
    < /tr >
    < /table >
    < / xsl: if >
    < / xsl: foreach >
    <!--get the list of activities-->
    < table >
    < /tr >

    < b >
    < class td = "SmallBlackFontBold" align = "left" width = "8%" > reason: < table >
    < td align = "left" width = "20%" >
    < xsl: value-of select = "PAEvent/EventList/reason" / >
    < table >
    < td > < table >
    < td > < table >
    < class td = "SmallBlackFontBold" align = "left" width = "14%" > PR_NO: < table >
    < td align = "left" width = "18%" >
    < xsl: value-of select = "PAEvent/EventList/PR_NO" / >
    < table >
    < /tr >

    < / xsl: foreach >
    < /table >

    < / div >
    < / xsl: template >
    < / xsl: stylesheet >

    Published by: 837989 on April 25, 2013 14:13

Maybe you are looking for

  • Failure of wifi windows 8.1 Z580

    After the update to Windows 8.1 there is a big problem with the wifi. Once it to connect and to work some time it crashes. After you disconnect and reconnect the laptop stops. Power off and on again the same. Sometimes it runs about 2 or 3 hours, but

  • Permission to change to single user mode / recovery

    So I have a very very big problem. In my MAC, I have only 18 MB, more free space on the disk. But the problem now is that my MAC no longer starts, I think it's because of the little space remaining. So now the i ' am trying to delete the files from t

  • Record from DVR thru TV to laptop

    My husband and I go on vacation, and we have a few records on our DVR.  If I can connect my laptop to my TV and then listen to the recording, can I use Media Center or Movie Maker to record in the laptop so that we can look at more later? I found dir

  • Setup search rule of venture capital to Lync Server

    Hi Experts, I'm still learning on how to implement rules research on the RESUME. However, currently, I make the VCS with Lync Server integration. The installer is: -. 1. transport server) edge 2. end of Sling pool) (3.) what a single control VCs runn

  • notifications of Skype momentarily interrupt the playback of windows media player.

    Recently, I received my Dell 17r with windows 7. If the computer is new. When you run playback in Windows media player, he pauses for a second or so when I get notifications of Skype. Other readers the real player and VLC for EXAMPLE do not have this