Timestamp resolution in DSC

I know that citadel has a timestamp resolution of 100 nanoseconds... but I have also heard that LV DSC has a resolution of only 1 millisecond.
I know I could figure this out with a little testing, but I was wondering if the following is true:
1. If you log data to citadel using LV DSC, the default resolution for all timestamps is only 1 ms. This means the LabVIEW-DSC-generated timestamps are of 1 ms accuracy.
2. However, if you build your own VI-based device server, you can specify your own timestamps. Can these timestamps be of up to 100 ns accuracy?
Solved!
Go to Solution.

You are correct. The time resolution for ODBC is 10 ms, for DSC Tag Engine it is 1 ms and for Citadel it is 100 ns. Of course you will be limited by the lowest resolution. When retrieving data through ODBC you will only get a resolution of 10 ms even though the data was logged with a resolution of 1 ms.
If you create a vi-based server it will still use the Tag Engine and thus be limited to the 1 ms of resolution.

Similar Messages

  • DSC alarm API Timestamp

    Hi,
    We are currently building an application for electrical systems using cRIO and DSC HMI features. Our intention is to generate alarm condition in cRIO and display the alarms on HMI-PC using the DSC alarm API. We are looking for a very precise timing on alarms down to less than 10 milliseconds. Our current setup is configured as follows:
    cRIO has a Boolean shared variable to trigger an alarm condition via calculations in cRIO.
    HMI PC also has a Boolean shared variable aliased (PSP-URL) with the cRIO variable. We do this in order to enable Alarms on the PC  variable and use the alarming API functionality.
    From our understanding, DSC alarms API display PC-system timestamp whenever an alarm condition is triggered from cRIO. Apparently, the shared variable engine (SVE) on cRIO communicates to the SVE in the PC and passes information about alarm condition and timestamp. However the SVE in the PC only passes on information about alarm trigger to the DSC alarm API; it doesn’t take the timestamp and generates it using system (i.e. HMI PC) time.
     We were wondering if we could get the cRIO timestamp on the DSC alarms list "set time"? This is the best desirable situation. 
    Do we have to write the cRIO timestamp to the citadel database becasue DSC alarms API just reads alarms from citadel? Once alarms are acknowledge, it wrties back the information to the database. So, there is something editing the database which is not transparent.
    Any feedback on this to enlighten our understanding will be greatly appreciated.

    Hi, 
    If I'm not mistaken that you want the timestamp data from the cRIO to be transfered to the PC, there is a setting at the cRIO shared variable (you'll need to set it at the Project Explorer where you create the time stamp) which you can have the shared variable to give out time stamp: http://zone.ni.com/reference/en-XX/help/371361H-01/lvconcepts/sv_using_nodes/
    Alternatively, you could set the shared variable to transfer data of cluster data type which consists of timestamp and the datatype that represents your alarm trigger information: http://digital.ni.com/public.nsf/allkb/DDEB4D9BC34705C086257242000FF7DB
    If you are using RT programming, you can place a timestamp related functions like Elapsed Time Express VI or Get time in seconds (which you need to convert using )  and bundle it with the alarm information using Bundle.vi or Bundle by Name.vi and write to the shared variable 
    Or you could give a screenshot of the program an explain using the screenshot on what you are planning to do. 
    As for your alarm acknowledgement thing, if your PC is connected with your cRIO always, you can just create some sort of hand shaking tools and use one or two shared variables specially for acknowledgement purpose. Something like a 2 way handshaking operations in a TCP/IP protocol. 
    Hope that helps
    Warmest regards,
    Lennard.C
    Learning new things everyday...

  • NI PCI-CAN/2 Serie 2 100% Busload

    Hi all,
    I'm trying to generate 100% "NI PCI-CAN/2 Serie 2" card, but I'm only able to reach 60% with 8byte CAN frames and 35% with 1byte CAN frames. I'm using the "CAN Transmit Multiple" example:
    loop:
       //write the frames to the board    
       Status = ncWriteMult (TxHandle0, sizeof(Transmit0), Transmit0);
       //wait until the last frame is send out            
       Status = ncWaitForState (TxHandle0, NC_ST_WRITE_SUCCESS, 2000, 0);
       //This is faster than using ncWaitForState (TxHandle0, NC_ST_WRITE_MULT, 200, 0)
    However there is always a ~85uS gap between the CAN frames. (I'm looping back to the second CAN channel of the card.)
    Does anyone have an idea how to fix this?
    Regards,
    mskr
     

    Sorry for not posting the whole code but only the loop fragment - but here it is:
    CAN Transmit multiple.c
    Demonstrates how to transmit multiple CAN Frames in one Burst via the Network Interface.
    Time Difference is related to the first frame which always has to have a timestamp of zero.
    In Timestamp Mode, these frames will be sent out using the specified time differences.
    In Immediate Mode all frames will be send out back to back in one burst.
    #include <stdio.h> // Include file for printf
    #include <stdlib.h> // Include file for strtol
    #include <windows.h> // Include file for Win32 time functions
    #include <conio.h> // Include file for _getch/_kbhit
    #include <string.h>
    #include "Nican.h" // Include file for NI-CAN functions and constants
    #define NUM_TX_CNT 256
    /* NI-CAN handles */
    NCTYPE_OBJH TxHandle=0;
    /* Print a description of an NI-CAN error/warning. */
    void PrintStat(NCTYPE_STATUS status, char *source)
    char statusString[1024];
    if (status != 0)
    ncStatusToString(status, sizeof(statusString), statusString);
    printf("\n%s\nSource = %s\n", statusString, source);
    // close object handle, then exit.
    ncCloseObject(TxHandle);
    exit(1);
    int getch_noblock()
    if (_kbhit())
    return _getch();
    else
    return -1;
    int main ()
    NCTYPE_CAN_STRUCT Transmit[NUM_TX_CNT];
    NCTYPE_UINT32 TXMode = 0;
    NCTYPE_ATTRID AttrIdList[8];
    NCTYPE_UINT32 AttrValueList[8];
    NCTYPE_UINT32 Baudrate = 1000000;
    NCTYPE_STATUS Status;
    char Interface[7] = "CAN0";
    int NumFrames = NUM_TX_CNT;
    int iDataLoop, iLoop;
    int ch;
    int frame_id_curr, frame_id_cnt;
    unsigned int packet_cnt = 0;
    /* Configure the CAN Network Interface Object */
    AttrIdList[0] = NC_ATTR_BAUD_RATE;
    AttrValueList[0] = Baudrate;
    AttrIdList[1] = NC_ATTR_START_ON_OPEN;
    AttrValueList[1] = NC_FALSE;
    AttrIdList[2] = NC_ATTR_READ_Q_LEN;
    AttrValueList[2] = 0;
    AttrIdList[3] = NC_ATTR_WRITE_Q_LEN;
    AttrValueList[3] = NumFrames;
    AttrIdList[4] = NC_ATTR_CAN_COMP_STD;
    AttrValueList[4] = 0;
    AttrIdList[5] = NC_ATTR_CAN_MASK_STD;
    AttrValueList[5] = NC_CAN_MASK_STD_DONTCARE;
    AttrIdList[6] = NC_ATTR_CAN_COMP_XTD;
    AttrValueList[6] = 0;
    AttrIdList[7] = NC_ATTR_CAN_MASK_XTD;
    AttrValueList[7] = NC_CAN_MASK_XTD_DONTCARE;
    Status = ncConfig(Interface, 8, AttrIdList, AttrValueList);
    if (Status < 0)
    PrintStat(Status, "ncConfig");
    /* open the CAN Network Interface Object */
    Status = ncOpenObject(Interface, &TxHandle);
    if (Status < 0)
    PrintStat(Status, "ncOpenObject");
    for(iLoop = 0; iLoop < NUM_TX_CNT; iLoop++)
    Transmit[iLoop].ArbitrationId = iLoop;
    Transmit[iLoop].DataLength = 8;
    Transmit[iLoop].FrameType = NC_FRMTYPE_DATA;
    //Transmit[iLoop].Timestamp.HighPart = 0;
    /* The Timestamp resolution is ms, so only the low part is needed as multiple of 100ns */
    //Transmit[iLoop].Timestamp.LowPart = time_dff[iLoop]*10000;
    /* print out the instructions to the I/O window */
    printf("\nRunning on CAN0 ...\n\nPress 't' to transmit the frames timestamped (PXI/PCI/PCMCIA only)");
    printf("\n\nPress 'n' to transmit the frames back to back\n\nPress 'q' to quit\n\n");
    /*Transmit frames each time the user selects to*/
    frame_id_curr = 0;
    do
    ch = _getch();
    if (ch == 'n')
    int ch1;
    //Start Communication with ncAction
    Status = ncAction (TxHandle, NC_OP_START, 0);
    if (Status < 0)
    PrintStat(Status, "ncAction");
    frame_id_curr = 0;
    frame_id_cnt = 0;
    packet_cnt = 1;
    do {
    ch1 = getch_noblock();
    for (iLoop = 0; iLoop < NUM_TX_CNT; iLoop++)
    Transmit[iLoop].ArbitrationId = frame_id_curr++;
    memset(Transmit[iLoop].Data, 0, 8);
    *((unsigned int *)(Transmit[iLoop].Data)) = packet_cnt++;
    if (frame_id_curr == 0x800)
    frame_id_curr = 0;
    frame_id_cnt++;
    //write the frames to the board
    Status = ncWriteMult (TxHandle, sizeof(Transmit), Transmit);
    if (Status < 0)
    PrintStat(Status, "ncWrite");
    //wait until the last frame is send out
    Status = ncWaitForState (TxHandle, NC_ST_WRITE_SUCCESS, 2000, 0);
    if (Status < 0)
    PrintStat(Status, "ncWaitForState1");
    //wait until there is free space
    //do {
    // Status = ncWaitForState (TxHandle, NC_ST_WRITE_MULT, 200, 0);
    //} while (Status < 0);
    } while (ch1 == -1);
    //wait until the last frame is send out
    Status = ncWaitForState (TxHandle, NC_ST_WRITE_SUCCESS, 2000,0);
    if (Status < 0)
    PrintStat(Status, "ncWaitForState");
    //stop communication to set the TXMode for the next write
    Status = ncAction (TxHandle, NC_OP_STOP, 0);
    if (Status < 0)
    PrintStat(Status, "ncAction");
    Sleep(100);
    } while (ch != 'q');
    /* Close the Network Interface Object */
    Status = ncCloseObject(TxHandle);
    if (Status < 0)
    PrintStat(Status, "ncCloseObject");
    return 0;

  • Can I enter a different time stamp in Citadel?

    While logging data in a citadel database is it possible to log time stamp other than the system time ?

    - Memory Tags will get the timestamp from the local acting DSC Engine's computer.
    - I/O Tags get the timestamp from the I/O server when the timestamp is provided. This could be for example a VI-based Server that provides special timestamp for certain items.
    - OPC server: Normally the OPC server provides the timestamp and LabVIEW DSC's OPC client just passes through the timestamp to be logged into Citadel.
    Conclusion: If you just use regular tags, you cannot provide a timestamp with the value to be logged. You have to write your own (VI-based) server with its timestamps.
    LabVIEW DSC comes with some VI-based server examples and a .pdf manual for VI-based Server development. That's maybe a good starting point.
    Hope this helps
    Roland

  • Mysql datetime datatype, from that datetime how can i compar only time part

    Hello i have database table in mysql, there is Datetime datatype column, from that datetime how can i compare only time part .....??
    Thanks in advance...

    Note you can't simply just compare time via equality however.
    Timestamp resolution is to the second or even milli-second. No user wants to match a time to an exact millisecond.
    What they want is something like a match by hour - for example returning the number of transactions that happened from 1pm to 2pm. Even that isn't completely correct because then you need to consider whether 1pm and/or 2pm is inclusive or exclusive. Normally one end will be inclusive and the other exclusive.
    So first you need to define what the period is.
    Then construct the range.
    Then pass the range and, as already mentioned, use specific functions to handle the extraction of the time.

  • DSC 8 custom timestamp

    Is there a way to write a custom timestamp to a published shared variable in DSC 8.0, as we could in older DSC versions with VI-based servers?

    At least for the time being you cannot create shared variables with custom timestamps but...
    In DSC 8.0 the ability was added to log to the Citadel database directly, bypassing the engine.  Once you get the information from the acquiring computer you could publish the data to a non-logging shared variable so it would be available to others on the network and write the data directly into the database (which allows you to supply the timestamp.)
    Obviously this is more cumbersome than just supplying a custom timestamp to the variable but it will allow you to log with the resolution you require until custom timestamps are available with the shared variable.
    Regards,
    Robert

  • DSC 8.6.1 wrong timestamps for logged data with Intel dual core

    Problem Description :
    Our LV/DCS 8.6.1 application uses shared variables to log data to Citadel. It is running on many similar computers at many companies just fine, but on one particular Intel Dual Core computer, the data in the Citadel db has strange shifting timestamps. Changing bios to startup using single cpu fixes the problem. Could possibly set only certain NI process(es) to single-cpu instead (but which?). The old DSCEngine.exe in LV/DSC 7 had to be run single-cpu... hadn't these kind of issues been fixed by LV 8.6.1 yet?? What about LV 2009, anybody know?? Or is it a problem in the OS or hardware, below the NI line??
    This seems similar to an old issue with time synch server problems for AMD processors (Knowledge Base Document ID 4BFBEIQA):
    http://digital.ni.com/public.nsf/allkb/1EFFBED34FFE66C2862573D30073C329 
    Computer info:
    - Dell desktop
    - Win XP Pro sp3
    - 2 G RAM
    - 1.58 GHz Core 2 Duo
    - LV/DSC 8.6.1 (Pro dev)
    - DAQmx, standard instrument control device drivers, serial i/o
    (Nothing else installed; OS and LV/DSC were re-installed to try to fix the problem, no luck)
    Details: 
    A test logged data at 1 Hz, with these results: for 10-30 seconds or so, the timestamps were correct. Then, the timestamps were compressed/shifted, with multiple points each second. At perfectly regular 1-minute intervals, the timestamps would be correct again. This pattern repeats, and when the data is graphed, it looks like regular 1-sec interval points, then more dense points, then no points until the next minute (not ON the minute, e.g.12:35:00, but after a minute, e.g.12:35:24, 12:36:24, 12:37:24...). Occasionally (but rarely), restarting the PC would produce accurate timestamps for several minutes running, but then the pattern would reappear in the middle of logging, no changes made. 
    Test info: 
    - shared variable configured with logging enabled
    - data changing by much more than the deadband
    - new value written by Datasocket Write at a steady 1 Hz
    - historic data retrieved by Read Traces
    - Distributed System Manager shows correct and changing values continuously as they are written

    Meg K. B. , 
    It sounds like you are experiencing Time Stamp Counter (TSC) Drift as mentioned in the KB's for the AMD Multi-Core processors. However, according to this wikipedia article on TSC's, the Intel Core 2 Duo's "time-stamp counter increments at a constant rate.......Constant TSC behavior ensures that the duration of each clock tick is
    uniform and supports the use of the TSC as a wall clock timer even if
    the processor core changes frequency." This seems to suggest that it would be not be the case that you are seeing the issue mentioned in the KBs.
    Can you provide the exact modle of the Core 2 Duo processor that you are using?
    Ben Sisney
    FlexRIO V&V Engineer
    National Instruments

  • Timestamp with a better resolution

    Hello!
    if i didn't omit something, Oracle 8.1 has a resolution
    of only 1 sec. for timestamps. Is there any type with
    a better resolution?
    (even a clear "NO" would be of great help)
    Thank you!
    AUrelian Coasan

    While this will not help you with Oracle8i, in 9i, there is a built-in type called timestamp (comes in 3 flavours, plain, with timezone, and with local timezone) which has fractional second accuracy.
    Ciao
    Daniel

  • LabVIEW DSC 8.0 examples that deal with events check for valid timestamp.Why?

    Hi folks !
    There are examples that come with LabVIEW DSC 8.0 that deal with alarm events, In these examples - DSC Alarms Event Structure Support.vi contained in DSC Alarms Demo.lvproj, for instance - when an alarm event occurs, the code checks for a valid time stamp - 17:00:00.000 31/12/1975. I´m confused, can anyone help me understanding why it´s done?
    Thanks !

    Hello marc8470,
    Each Virtex 5 FPGA bank requires an external voltage reference.  The FlexRIO FPGA module provides this reference in the form of Vccoa and Vccob.  Because there are two voltage references available on the FlexRIO FPGA module, each Vcco reference is connected to 2 IO banks.  The Adapter Module Interface and Protocol chapter of the FlexRIO MDK manual has a table that indicates which GPIO banks are referenced to which Vcco reference.  The Vcco levels set in the general section of the adapter module configuration file are not used by the Xilinx compiler, but instead by the fixed FlexRIO logic to configure the external voltage references.  The IO standard constraints section of the adapter module configuration file is used during compile to configure the output drivers in the Virtex 5.  If the general VccoALevel and VccoBLevel values do not match the IO standard constraints, no error will occur during compile, but the hardware will not be configured correctly during runtime.  The logic families used by each general purpose IO (GPIO) line must match that of the Vcco levels set in the general section of the adapter module configuration file.  A mismatch in values could result to incorrect behavior or possible damage to the FlexRIO FPGA module or the adapter module. 
    In the future, please use the email address included in your NI FlexRIO Adapter Module Development Kit (MDK) User Manual to send your questions directly to the FlexRIO MDK support team.  This group has experience with specific FlexRIO MDK questions such as this one. 
    The FlexRIO MDK manual is designed to provide all of the information a hardware designer will need to create a FlexRIO adapter module.  National Instruments is always improving and working on new releases of the FlexRIO MDK.  Please feel free to use the support email address in the FlexRIO MDK manual to send me any feedback you have on the contents of the manual.
    Regards,
    Browning G
    FlexRIO R&D

  • CITADEL and RELATIONAL DATABASE Alarms & Events Logging Time Resolution

    Hello,
    I would like to know how I can setup Logging Time Resolution when Logging Alarms & Events to CITADEL or RELATIONAL DATABASE.
    I tried use Logging:Time Resolution Property of Class: Variable Properties without success.
    In my application I need that timestamp of SetTime, AckTime and ClearTime will be logged using Second Time Resolution, in other words, with fractional seconds part zero.
    I am using a Event Structure to get SetTime, AckTime and ClearTime events and I want to UPDATE Area and Ack Comment Fields thru Database Connectivity but when I use SetTime timestamp supplied by Event Structure in WHERE clause Its not possible get the right alarm record because there are a different time resolution between LV SetTime timestamp and timestamp value logged in database.
    Eduardo Condemarin
    Attachments:
    Logging Time Resolution.jpg ‏271 KB

    I'm configuring the variables to be logged in the same way that appears on the file you send, but it doesn't work... I don't know what else to do.
    I'm sending you the configuration image file, the error message image and a simple vi that creates the database; after, values are logged; I generate several values for the variable, values that are above the HI limit of the acceptance value (previously configured) so alarms are generated. When I push the button STOP, the system stops logging values to the database and performs a query to the alarms database, and the corresponding error is generated... (file attached)
    The result: With the aid of MAXThe data is logged correctly on the DATA database (I can view the trace), but the alarm generated is not logged on the alarms database created programatically...
    The same vi is used but creating another database manually with the aid of MAX and configuring the library to log the alarms to that database.... same result
    I try this sabe conditions on three different PCs with the same result, and I try to reinstall LabVIEW (development and DSC) completelly (uff!) and still doesn't work... ¿what else can I do?
    I'd appreciate very much your help.
    Ignacio
    Attachments:
    error.jpg ‏56 KB
    test_db.vi ‏38 KB
    config.jpg ‏150 KB

  • Schedule line timestamp different from Order Create-Date/timestamp

    Scenario: Created an order at 3:30pm CST with the requested delivery date of the material as 7/10/2011. It seems like that when the order is saved, CRM attaches the time-stamp to the requested delivery date. However, the timestamp getting attached to the delivery date is 1 hour less than the order-create time, i.e. delivery-date looks like 7/10/2011  2:30pm CST.
    Please advise what could be causing this and its resolution. FYI, user-profile (or the user creating the order) has the same time-zone setting of CST.
    Thanks!

    Scenario: Created an order at 3:30pm CST with the requested delivery date of the material as 7/10/2011. It seems like that when the order is saved, CRM attaches the time-stamp to the requested delivery date. However, the timestamp getting attached to the delivery date is 1 hour less than the order-create time, i.e. delivery-date looks like 7/10/2011  2:30pm CST.
    Please advise what could be causing this and its resolution. FYI, user-profile (or the user creating the order) has the same time-zone setting of CST.
    Thanks!

  • TIMESTAMP WITH TIME ZONE

    Hi Team, will Import into a table I am getting the below error message
    Error Message
    Record 1: Rejected - Error on table MTN_BUNDLES_EXPIRY_MIG, column EXPIRY_DATE_T.
    ORA-01840: input value not long enough for date format
    The data client provide in .XLs file
    2013-08-31 17:14:56
    My Table Structure is
    CREATE TABLE tmp_mtnuga_3g_expiry_mig
        MSISDN_V            VARCHAR2 (50),
        expiry_Date_t         TIMESTAMP(6) WITH TIME ZONE
        status_date_t          TIMESTAMP(6) WITH TIME ZONE
        GOT_STARTER_PACK_V  NUMBER(10)
    I am using 2 option to import into a table
    First option using Toad ---> Import Table -- option here i am getting error like
    The format is not matched.
    Second option using SQL Loader-->
    LOAD DATA
    INFILE 'D:\ss\TT-Projects\Customer Apps\Client Dump\3GBundle.csv'
    BADFILE 'D:\dd\TT-Projects\Customer Apps\Client Dump\3GBundle.bad'
    DISCARDFILE 'D:\dd\TT-Projects\Customer Apps\Client Dump\3GBundle.dsc'
    INTO TABLE  tmp_mtnuga_3g_expiry_mig
    INSERT
    (MSISDN_V,
    EXPIRY_DATE_T,
    STATUS_DATE_T,
    GOT_STARTER_PACK_V
    Please guide me how solve the TimeStamp

    Check Part II SQL*Loader I can't remember when I last used it (being server side I use External Tables), but it should turn out something like
    LOAD DATA 
    INFILE 'D:\ss\TT-Projects\Customer Apps\Client Dump\3GBundle.csv'  
    BADFILE 'D:\dd\TT-Projects\Customer Apps\Client Dump\3GBundle.bad' 
    DISCARDFILE 'D:\dd\TT-Projects\Customer Apps\Client Dump\3GBundle.dsc' 
    INSERT INTO TABLE  tmp_mtnuga_3g_expiry_mig 
    fields terminated by ',' optionally enclosed by '"'
    (MSISDN_V, 
    EXPIRY_DATE_T char "to_timestamp_tz(:EXPIRY_DATE_T,'yyyy-mm-dd hh24:mi:sstzh:tzm')", 
    STATUS_DATE_T char "to_timestamp_tz(:STATUS_DATE_T,'yyyy-mm-dd hh24:mi:sstzh:tzm')", 
    GOT_STARTER_PACK_V 
    you must adjust the mask to match your data
    Regards
    Etbin

  • Is there a way to view timestamps in DIAdem with a higher precision than 100 microseconds?

    I understand DIAdem has limitations on viewing timestamps due to DateTime values being defined as a double value and that this results in 100 us resolution.  Is there any way to get around this?  I am logging time critical data with timestamps from an IEEE 1588 clock source and it is necessary to have higher resolution.  Perhaps I could convert timestamp to a double before logging but then would have to convert it back in Diadem somehow...
    Thanks,
    Ben

    As you said, DIAdem can only display up to 4 decimal positions on a timestamp. Timestamps in DIAdem are recorded as the number of seconds since 01/01/0000 00:00:00.0000. To achieve a higher precision, it would be necessary to use a relative timestamp. Many timestamps are defined from different references anyway, so it might be possible to import the timestamps as numeric values to maintain their precision. Converting the timestamp prior to importing into DIAdem seems like a viable method of working around the precision limit.
    Steven

  • Low Resolution when uploading to online printing service

    When I upload photos from iPhoto to an online printing service (Walmart, Costco, Shutterfly) photos show up as low resolution. When I take the picture I use the higest resolution. Are there any suggestions on how to rectify this situation? I have uploaded and printed before with no problem. Do I have to use the memory stick directly to the site or change settings?
    My camera is a Sony DSC-W55.
    iMac   Mac OS X (10.4.9)  

    lulamom
    Welcome to the Apple Discussions.
    How are you going about uploading?
    Are you digging the files out of the DATA folder in the iPhoto Library Folder? If so, you're using the thumbnails that iPhoto uses for display purposes.
    There are three ways (at least) to get files from the iPhoto Window.
    1. Drag and Drop: Drag a photo from the iPhoto Window to the desktop, there iPhoto will make a full-sized copy of the pic.
    2. File -> Export: Select the files in the iPhoto Window and go File -> Export. The dialogue will give you various options, including altering the format, naming the files and changing the size. Again, producing a copy.
    3. Show File: Right- (or Control-) Click on a pic and in the resulting dialogue choose 'Show File'. A Finder window will pop open with the file already selected.
    I suggest you use the File -> Export option and export the pics to the desktop. There iPhoto will make a copy. Upload that, and when the upload is finished you can trash the copy on the desktop - your original is safe in iPhoto.
    Regards
    TD

  • Render Service Problem - Root Cause ALC-DSC-127-000

    I have decided to write a Form Guide renderer instead of using one from the Samples. The renderer process was created by carefully observing the one in the samples. After creating the renderer, I activated it and used it in my process. In the livecycle workspace, when I try to access the initialization task, A popup error shows up. Looking at the logs revealed the following error/exception:
    exception: flex.messaging.MessageException: ALC-WKS-005-028: A problem occurred in the Render Service. Please review the render orchestration for this process.
    2007-12-26 13:34:23,190 INFO [STDOUT] [Flex] Exception when invoking service: remoting-service
    with message: Flex Message (flex.messaging.messages.RemotingMessage)
    operation = render
    clientId = 60F1A10E-C009-251A-6C47-179779FEB2B7
    destination = task-actions
    messageId = F65756D8-8D22-85D3-598E-17BBDA529B7E
    timestamp = 1198694062784
    timeToLive = 1198694062784
    body = null
    hdr(DSEndpoint) = workspace-polling-amf
    hdr(DSId) = 60F1373F-590F-5AC8-B6A5-1296C747EA45
    exception: flex.messaging.MessageException: ALC-WKS-005-028: A problem occurred in the Render Service. Please review the render orchestration for this process.
    2007-12-26 13:34:23,377 INFO [STDOUT] [Flex] [ERROR] Root cause: ALC-DSC-127-000: com.adobe.idp.dsc.LongLivedInvocationException: The Long Lived Service i3Renderer can not be invoked synchronously.
    at com.adobe.idp.dsc.routing.Router.routeRequest(Router.java:76)
    at com.adobe.idp.dsc.provider.impl.base.AbstractMessageReceiver.routeMessage(AbstractMessage Receiver.java:88)
    at com.adobe.idp.dsc.provider.impl.vm.VMMessageDispatcher.doSend(VMMessageDispatcher.java:21 0)
    at com.adobe.idp.dsc.provider.impl.base.AbstractMessageDispatcher.send(AbstractMessageDispat cher.java:57)
    at com.adobe.idp.dsc.clientsdk.ServiceClient.invoke(ServiceClient.java:208)
    at com.adobe.idp.taskmanager.dsc.service.TaskManagerServiceImpl.renderForm(TaskManagerServic eImpl.java:3404)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at com.adobe.idp.dsc.component.impl.DefaultPOJOInvokerImpl.invoke(DefaultPOJOInvokerImpl.jav a:181)
    at com.adobe.idp.dsc.interceptor.impl.InvocationInterceptor.intercept(InvocationInterceptor. java:134)
    at com.adobe.idp.dsc.interceptor.impl.RequestInterceptorChainImpl.proceed(RequestInterceptor ChainImpl.java:44)
    at com.adobe.idp.dsc.transaction.interceptor.TransactionInterceptor$1.doInTransaction(Transa ctionInterceptor.java:74)
    at com.adobe.idp.dsc.transaction.impl.ejb.adapter.EjbTransactionCMTAdapterBean.execute(EjbTr ansactionCMTAdapterBean.java:336)
    at com.adobe.idp.dsc.transaction.impl.ejb.adapter.EjbTransactionCMTAdapterBean.doRequiresNew (EjbTransactionCMTAdapterBean.java:282)
    at sun.reflect.GeneratedMethodAccessor258.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.jboss.invocation.Invocation.performCall(Invocation.java:345)
    at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionConta iner.java:214)
    at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionI nterceptor.java:149)
    at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstance Interceptor.java:154)
    at org.jboss.webservice.server.ServiceEndpointInterceptor.invoke(ServiceEndpointInterceptor. java:54)
    at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidationInterceptor.java:48)
    at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:106)
    at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:

    Hi Gary,
    I am getting following error message, can you pls help me with this
    Mar 26, 2008 5:25:53 PM com.adobe.workspace.processes.ProcessActions getProcessInstance
    WARNING: ALC-WKS-005-059: An error occurred while retrieving the list of process instances for process "Process Packages".
    [Flex] Exception when invoking service: remoting-service
    with message: Flex Message (flex.messaging.messages.RemotingMessage)
    operation = getProcessInstance
    clientId = DA923519-C11F-EDFE-A537-D10A27A3FA00
    destination = process-actions
    messageId = A9726928-7AEA-8308-B7C4-ECFB90EFA472
    timestamp = 1206566753361
    timeToLive = 1206566753361
    body = null
    hdr(DSEndpoint) = workspace-polling-amf
    hdr(DSId) = DA8DF62D-CD1E-2718-618C-0902E3DF178A
    exception: flex.messaging.MessageException: ALC-WKS-005-059: An error occurred while retrieving the list of process instances for process "Process Packages".
    [Flex] [ERROR] Exception when invoking service: remoting-service
    with message: Flex Message (flex.messaging.messages.RemotingMessage)
    operation = getProcessInstance
    clientId = DA923519-C11F-EDFE-A537-D10A27A3FA00
    destination = process-actions
    messageId = A9726928-7AEA-8308-B7C4-ECFB90EFA472
    timestamp = 1206566753361
    timeToLive = 1206566753361
    body = null
    hdr(DSEndpoint) = workspace-polling-amf
    hdr(DSId) = DA8DF62D-CD1E-2718-618C-0902E3DF178A
    exception: flex.messaging.MessageException: ALC-WKS-005-059: An error occurred while retrieving the list of process instances for process "Process Packages".
    [Flex] Root cause: com.adobe.idp.taskmanager.dsc.client.query.TaskQueryServiceException: com.adobe.pof.schema.AttributeNotFoundException: Attribute: creator_id does not exist on object-type: workflow.pt_process packages.
    at com.adobe.idp.taskmanager.dsc.queryservice.TaskManagerQueryServiceImpl.processSearch(Task ManagerQueryServiceImpl.java:730)
    at jrockit.reflect.VirtualNativeMethodInvoker.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.adobe.idp.dsc.component.impl.DefaultPOJOInvokerImpl.invoke(DefaultPOJOInvokerImpl.jav a:181)
    at com.adobe.idp.dsc.interceptor.impl.InvocationInterceptor.intercept(InvocationInterceptor. java:134)
    at com.adobe.idp.dsc.interceptor.impl.RequestInterceptorChainImpl.proceed(RequestInterceptor ChainImpl.java:44)
    at com.adobe.idp.dsc.transaction.interceptor.TransactionInterceptor$1.doInTransaction(Transa ctionInterceptor.java:74)
    at com.adobe.idp.dsc.transaction.impl.ejb.adapter.EjbTransactionCMTAdapterBean.execute(EjbTr ansactionCMTAdapterBean.java:336)
    at com.adobe.idp.dsc.transaction.impl.ejb.adapter.EjbTransactionCMTAdapterBean.doSupports(Ej bTransactionCMTAdapterBean.java:212)
    at com.adobe.idp.dsc.transaction.impl.ejb.adapter.EjbTransactionCMTAdapter_z73hg_ELOImpl.doS upports(EjbTransactionCMTAdapter_z73hg_ELOImpl.java:67)
    at com.adobe.idp.dsc.transaction.impl.ejb.EjbTransactionProvider.execute(EjbTransactionProvi der.java:104)
    at com.adobe.idp.dsc.transaction.interceptor.TransactionInterceptor.intercept(TransactionInt erceptor.java:72)
    at com.adobe.idp.dsc.interceptor.impl.RequestInterceptorChainImpl.proceed(RequestInterceptor ChainImpl.java:44)
    at com.adobe.idp.dsc.interceptor.impl.InvalidStateInterceptor.intercept(InvalidStateIntercep tor.java:37)
    at com.adobe.idp.dsc.interceptor.impl.RequestInterceptorChainImpl.proceed(RequestInterceptor ChainImpl.java:44)
    at com.adobe.idp.dsc.interceptor.impl.AuthorizationInterceptor.intercept(AuthorizationInterc eptor.java:80)
    at com.adobe.idp.dsc.interceptor.impl.RequestInterceptorChainImpl.proceed(RequestInterceptor ChainImpl.java:44)
    at com.adobe.idp.dsc.engine.impl.ServiceEngineImpl.invoke(ServiceEngineImpl.java:113)
    at com.adobe.idp.dsc.routing.Router.routeRequest(Router.java:102)
    at com.adobe.idp.dsc.provider.impl.base.AbstractMessageReceiver.routeMessage(AbstractMessage Receiver.java:88)
    at com.adobe.idp.dsc.provider.impl.vm.VMMessageDispatcher.doSend(VMMessageDispatcher.java:18 3)
    at com.adobe.idp.dsc.provider.impl.base.AbstractMessageDispatcher.send(AbstractMessageDispat cher.java:57)
    at com.adobe.idp.dsc.clientsdk.ServiceClient.invoke(ServiceClient.java:208)
    at com.adobe.idp.taskmanager.dsc.client.TypedTaskManagerQueryService.processSearch(TypedTask ManagerQueryService.java:245)
    at com.adobe.workspace.processes.ProcessActions.getProcessInstance(ProcessActions.java:174)
    at jrockit.reflect.VirtualNativeMethodInvoker.invoke(Unknown Source)
    Caused by: com.adobe.pof.schema.AttributeNotFoundException: Attribute: creator_id does not exist on object-type: workflow.pt_process packages.
    at com.adobe.pof.schema.POFAbstractObjectType.getAttribute(POFAbstractObjectType.java:177)
    at com.adobe.pof.omapi.POFDefaultQuery.projectAttribute(POFDefaultQuery.java:634)
    at com.adobe.idp.taskmanager.dsc.queryservice.TaskManagerQueryServiceImpl.processSearch(Task ManagerQueryServiceImpl.java:627)
    at jrockit.reflect.VirtualNativeMethodInvoker.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.adobe.idp.dsc.component.impl.DefaultPOJOInvokerImpl.invoke(DefaultPOJOInvokerImpl.jav a:181)
    at com.adobe.idp.dsc.interceptor.impl.InvocationInterceptor.intercept(InvocationInterceptor. java:134)
    at com.adobe.idp.dsc.interceptor.impl.RequestInterceptorChainImpl.proceed(RequestInterceptor ChainImpl.java:44)
    at com.adobe.idp.dsc.transaction.interceptor.TransactionInterceptor$1.doInTransaction(Transa ctionInterceptor.java:74)
    at com.adobe.idp.dsc.transaction.impl.ejb.adapter.EjbTransactionCMTAdapterBean.execute(EjbTr ansactionCMTAdapterBean.java:336)
    at com.adobe.idp.dsc.transaction.impl.ejb.adapter.EjbTransactionCMTAdapterBean.doSupports(Ej bTransactionCMTAdapterBean.java:212)
    at com.adobe.idp.dsc.transaction.impl.ejb.adapter.EjbTransactionCMTAdapter_z73hg_ELOImpl.doS upports(EjbTransactionCMTAdapter_z73hg_ELOImpl.java:67)
    at com.adobe.idp.dsc.transaction.impl.ejb.EjbTransactionProvider.execute(EjbTransactionProvi der.java:104)
    at com.adobe.idp.dsc.transaction.interceptor.TransactionInterceptor.intercept(TransactionInt erceptor.java:72)
    at com.adobe.idp.dsc.interceptor.impl.RequestInterceptorChainImpl.proceed(RequestInterceptor ChainImpl.java:44)
    at com.adobe.idp.dsc.interceptor.impl.InvalidStateInterceptor.intercept(InvalidStateIntercep tor.java:37)
    at com.adobe.idp.dsc.interceptor.impl.RequestInterceptorChainImpl.proceed(RequestInterceptor ChainImpl.java:44)
    at com.adobe.idp.dsc.interceptor.impl.AuthorizationInterceptor.intercept(AuthorizationInterc eptor.java:80)
    at com.adobe.idp.dsc.interceptor.impl.RequestInterceptorChainImpl.proceed(RequestInterceptor ChainImpl.java:44)
    at com.adobe.idp.dsc.engine.impl.ServiceEngineImpl.invoke(ServiceEngineImpl.java:113)
    at com.adobe.idp.dsc.routing.Router.routeRequest(Router.java:102)
    at com.adobe.idp.dsc.provider.impl.base.AbstractMessageReceiver.routeMessage(AbstractMessage Receiver.java:88)
    at com.adobe.idp.dsc.provider.impl.vm.VMMessageDispatcher.doSend(VMMessageDispatcher.java:18 3)
    at com.adobe.idp.dsc.provider.impl.base.AbstractMessageDispatcher.send(AbstractMessageDispat cher.java:57)
    at com.adobe.idp.dsc.clientsdk.ServiceClient.invoke(ServiceClient.java:208)
    at com.adobe.idp.taskmanager.dsc.client.TypedTaskManagerQueryService.processSearch(TypedTask ManagerQueryService.java:245)
    at com.adobe.workspace.processes.ProcessActions.getProcessInstance(ProcessActions.java:174)
    [Flex] [ERROR] Root cause: com.adobe.idp.taskmanager.dsc.client.query.TaskQueryServiceException: com.adobe.pof.schema.AttributeNotFoundException: Attribute: creator_id does not exist on object-type: workflow.pt_process packages.
    at com.adobe.idp.taskmanager.dsc.queryservice.TaskManagerQueryServiceImpl.processSearch(Task ManagerQueryServiceImpl.java:730)
    at jrockit.reflect.VirtualNativeMethodInvoker.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.ad

Maybe you are looking for