Newbie question: How to create a namespace and record filedate-retrieve

Spanking new to Namespaces
Looking for a way to place a .jpg as a smart object, then using Namespace, record the filedate of the .jpg
Then, have the layer sense if the original .jpg is newer and change the color of the layer.
Running into complications trying to do this with .jsx scripting alone.
Reason: This way, if the .jpg has been updated on the file server, the artist will be able to easily see that.
Don't want to add a panel and more work for the artist. Rather, have it all happen behind the scenes.

Here is how I create a new namespace in the layer metadata for my panel
// new namespace. Even though it looks like a web url it's not. It just needs to be unique.
const ns= 'http://www.smartobjectlinks.com/1.0/';
function setSOLinkMetadata( property, value ){
     if( activeDocument.activeLayer.isBackgroundLayer || !loadXMPLibrary()){
          alert( ErrStrs.CONVERT );
     } else {
          var xmp;
          if (value == "")
               value = " ";     
          try{
               xmp = new XMPMeta( activeDocument.activeLayer.xmpMetadata.rawData );
          } catch(e) {// no metadata so create new and add namespace
               xmp = new XMPMeta();
               var linkNS = new Namespace ( 'link', ns );
               XMPMeta.registerNamespace ( linkNS, 'SOlink' );
          try{
               xmp.setProperty(ns, property, value );
          } catch(e) {
               alert( ErrStrs.FAILEDMETADATA + e);
          activeDocument.activeLayer.xmpMetadata.rawData = xmp.serialize();
     unloadXMPLibrary();
If the file being linked has metadata you can use the ModifyDate in the XMP.
function getfileDate( file ){
     var date = new String();
     try{
          loadXMPLibrary();
          var xmpf = new XMPFile( file.fsName, XMPConst.UNKNOWN,
                                   XMPConst.OPEN_FOR_READ );
          var xmp = xmpf.getXMP();
          xmpf.closeFile();
          date = new XMPDateTime( xmp.getProperty
                              (XMPConst.NS_XMP, "ModifyDate").toString() );
     }catch(e){// fallback to OS file date
          date = new XMPDateTime ( file.created );
     date = date.toString();
     unloadXMPLibrary();
     return date;
The hard part will be getting the layer to 'sense' when the original has been changed. If you don't want the user to trigger the test you will have to use an event like open.

Similar Messages

  • Question: How to create new user and schema in 11g?

    Who can give me answer how to create a new user and schedule?
    I had installed oracle 11g DB and oracle client in my windows OS. I found in the 11g there is no enterprise manager console with new version. It is different from with oracle 10g.So i don't know how to create it new user.
    I had created new DB instance, but i don't how to create a user on that. Who can give me a hand for that? I hope one oracle experenice expert give my answers.
    Thanks a lot!
    Edited by: user774630 on Oct 27, 2008 10:01 PM
    Edited by: user774630 on Oct 27, 2008 10:09 PM

    Hi,
    I am not sure that which option you are talking about? Are you using the EMCA,http://download.oracle.com/docs/cd/B28359_01/server.111/b28319/emca.htm#SUTIL800] to create the new repository for the EM? If not the command line than the other only way is to use DBCA(Database Configuration Assistant).I believe you are talking about that. Yes ,if the message is coming creating the repository than after wards you can login to the EM. You would get the port no of the EM's HTTP port from the $OH/install/portlist.ini file.
    HTH
    Aman....
    Edited by: Aman.... on Oct 28, 2008 11:36 AM
    Gave up, link insertion doesn't work.

  • Easy Question How to create Basic Groups and add respective Users

    Please help. I need to know how to create a basic group and later add users to the group. The group name would be callled Hardware and I will add johnsmith and janedoe to the group. Should I concern myself with the group id for whatever reason? I think the command is somthing like groupadd. Do I do somthing like:
    # groupadd Hardware
    # useradd -G Hardware johnsmith
    # useradd -G Hardware janedoe
    I'm using Solaris 10 if that helps.
    A million thanks I very New2Solaris,
    Johnny Mac

    Ok here is what I found on the net:
    change a user's group information change a user's primary group membership:
    usermod -g Hardware johnsmith
    usermod -g Hardware janedoe
    I forgot to mention that these are existing accounts (sorry)
    In order to change user's supplemental group membership:
    usermod -G Hardware johnsmith
    usermod -G Hardware janedoe
    is the supplemental group simply adding them to another group and not changing there primary group, which by default I think is staff. I would like to keep them in staff and add them to another group, in this case Hardware.
    Anyones thougths?

  • Newbie Question: How to create a gap between header and wrapper?

    Hi everyone,
    My wife and I are trying to figure this one out. We have tried double clicking on the wrapper in the "All Rules" menu, adding a top margin to the wrapper in the "Box" submenu, as well as changing the positioning of the wrapper in the "Positioning" menu, but this made both the wrapper and header move down. How to I make the wrapper move down while leaving the header in place, so as to create a gap in between the two? Thansk so much!

    As snake states, a link to the page would be best. Usually margin top is what you would set. So if your wrapper is below your header, you would set the margin top in the css for the wrapper to be what you want the gap to be.
    Usually a wrapper or container is what is holding the whole site, but this doesn't sound the case here. So something like this in your css.
    .wrapper     {
        margin-top: 25px;
    You would probably add the margin-top:25px to the existing css for that page.
    If you can provide a link to the page, the very helpful people would be able to solve this for you rather easily.
    Jim

  • Newbie question: how to know current namespace in dbx debugging environment

    Good afternoon,
    I have an application, running on a Solaris 5.8.
    This application gives errors because of namespace issues, therefore I would like to check the namespace I am working in while debugging with dbx, but I don't find the command for this.
    Does anybody know which command to launch within a dbx environment for displaying the current namespace?
    Thanks
    Dominique

    (dbx) help -k namespace
    scopes (command)
    (dbx) scopes
    Function PSeudoClass::plain_function()
    namespace PSeudoClass
    File "ambig.cc"
    Loadobject /export/home/test/c++/namespace/a.out

  • How to create the namespace in java dictionory perspective?

    hi buddies,
          when i try to create the table in javadictinory pers
    pective.  Its is asking me to enter the name in the format of <NAMESPACE>_<SUFFIX>
      HOW TO CREATE THE NAMESPACE
         PLZ HELP ME
    HARI

    Hi,
    Go to Window->Preferences->Dictionary ->Nameserver Prefix
    and give the Prefix .
    Regards, Anilkumar

  • How to create a partner and header record using CRM_ORDER_MAINTAIN?

    Hi any one knows how to create a partner and header record using the function module CRM_ORDER_MAINTAIN??
    I tried to  create a record, but i only managed to create a header record and the partner record is not reflected in the transaction.  Why is that so? is there any indicator that i need to include?
    Thanks..
    Jen

    Hi Jen!
    I use this FM and it works perfectly.
    Use this to create a partner:
      gs_partner-ref_handle    = '0000000001'.
      gs_partner-ref_kind      = 'A'.
      gs_partner-ref_partner_handle = '0001'.
      gs_partner-partner_fct   = '00000001'.
      gs_partner-partner_no    = NO_PARTNER. "number of the partner, bu_partner
      gs_partner-display_type  = 'BP'.
      gs_partner-no_type       = 'BP'.
      gs_partner-kind_of_entry = 'C'.
    *  ls_partner_l-ref_handle    = '1'.
      gs_partner-ref_guid      = '00000000000000000000000000000000'.
      APPEND gs_partner  TO gT_partner .
      ls_input_field-ref_kind  = 'A'.
      ls_input_field-logical_key   = '0001'.
      ls_input_field-objectname  = 'PARTNER'.
      ls_input_field-ref_handle  = '0000000001'.
      ls_input_field_names-fieldname = 'DISPLAY_TYPE'.
      INSERT ls_input_field_names INTO TABLE ls_input_field-field_names.
      ls_input_field_names-fieldname = 'KIND_OF_ENTRY'.
      INSERT ls_input_field_names INTO TABLE ls_input_field-field_names.
      ls_input_field_names-fieldname = 'NO_TYPE'.
      INSERT ls_input_field_names INTO TABLE ls_input_field-field_names.
      ls_input_field_names-fieldname = 'PARTNER_FCT'.
      INSERT ls_input_field_names INTO TABLE ls_input_field-field_names.
      ls_input_field_names-fieldname = 'PARTNER_NO'.
      INSERT ls_input_field_names INTO TABLE ls_input_field-field_names.
      INSERT ls_input_field  INTO TABLE  gt_input_fields.
      clear ls_input_field-field_names[].
      CALL FUNCTION 'CRM_ORDER_MAINTAIN'
      EXPORTING
    *    it_schedlin_i   = gt_schedlin_i_com
        it_partner      = gt_partner
    *    it_sales        = gt_sales
    *      it_orgman       = gt_orgman
    *      it_appointment  = gt_appointment
    *      it_ordprp_i     = gt_ordprp_i
    *   it_product_i    = gt_product_i
    *      it_activity_i   = gt_activity_i
    *      it_pridoc       = gt_pridoc_com
      CHANGING
        ct_orderadm_h   = gt_orderadm_h
    *   ct_orderadm_i   = gt_orderadm_i
        ct_input_fields = gt_input_fields.
    *      ct_doc_flow     = gt_doc_flow
    *      cv_log_handle   = gv_log_handle.
    Hope it helps u,
    Regards,
    Mon.

  • How To Create A Technical And Business Systems For Web AS ABAP ???

    Hi Experts,
    How To Create A Technical And Business Systems For Web AS ABAP ???
    Please Let me Know All the Step-By-Step Process to Create ????
    Points Will be Given
    Regards
    Khanna

    Hi Sumit,
    When U Told the thing that first time to execute the RZ70 and All i Did this in XI System
    So I got An Entry for the Technical System for XI System.
    Now i Deleted that and Executed RZ70 in R/3.
    When I Executed RZ70, I got this Error.
    <b> "RFC Call failed: Error Opening an RFC Connection "</b>.
    Now I am Unable to see Any Technical System  Under Web As ABAP. It's Showing Empty Now.
    Please Let me know
    Regards
    Khanna

  • How to create the ICONS and SYMBOLS

    how to create the ICONS and SYMBOLS
    Title was edited by:
            Alvaro Tejada Galindo

    HI,
    Check this sample code....Not mine...
    REPORT SHOW_ICONS.
    TABLES: ICON.
    INCLUDE <ICON>.
    FIELD-SYMBOLS: <F>.
    SELECT * FROM ICON.
       ASSIGN (ICON-NAME) TO <F>.
       WRITE:   /(5) <F>, 20 '@',21 ICON-ID+1(2),23 '@',ICON-OLENG,
                ICON-BUTTON,ICON-STATUS,ICON-MESSAGE,ICON-FUNCTION,
                ICON-NAME.
    ENDSELECT.
    Also Try this,
    INCLUDE <symbol>.
    INCLUDE <icon>.
    Write:/ 'Phone Symbol:', SYM_PHONE AS SYMBOL.
    SKIP.
    WRITE: / 'Alarm Icon: ', icon_alarm AS ICON.
    For more information check out the following link it will help you.
    http://help.sap.com/saphelp_nw04/helpdata/en/9f/db9e4a35c111d1829f0000e829fbfe/content.htm
    Regards,
    Padmam.

  • How to create a package and add a file?

    Hi all,
    I am new to Java and very much much confussed with how to create a package and then include some files any help will be very thankfull.
    Thanks for your help
    kka.

    Steps for creating a package in java are as follows:
    Choose a base directory for your classes. For example, you might choose c:\java\packages. Type the following command:
    set CLASSPATH=%CLASSPATH%;c:\java\packages
    Create subdirectories for each chapter or section, if you don't already have them.
    For each of the classes in the subdirectories, add the following line to the very top of each file:
    package directory-name;
    where directory-name is the name of the subdirectory the class file is located in.
    In other directories you may have class files that need to access one of the classes in another directory (package). To do this, write one of the following at the top of the class that needs the other class:
    import subdir.*;
    or
    import subdir.classname;
    Use the class by name in the new class file.
    Note that you can create sub-packages by creating subdirectories of the original subdirectories, and inserting package statements at the top of the java files in those directories.
    Hope this helps!

  • How to create new user and How can i assign end user roles

    Hi,
    I am new to SAP, please explain how to create end users and their roles
    Thanks
    ravi

    Hi,
    Roles are decided by IT managers. Suppose if Persons who are working in shopfloor or production side
    give authorization to Production order create , change and Confirm like that etc
    1. In role maintenance (transaction PFCG), choose the Authorizations tab page.
    2. To change the authorization data for the transactions assigned to the role, choose Change Authorization Data or Expert Mode for Profile Generation. Otherwise, a dialog box appears in expert mode (see Regenerating an Authorization Profile After Changes).
    Please take telp from Basis person also refer this link,
    http://help.sap.com/saphelp_46c/helpdata/EN/52/6714a9439b11d1896f0000e8322d00/frameset.htm
    Thanks

  • How to create portal user and integrate with external appl login

    How to create portal user and integrate the user with external application for single sign-on ?
    I want to access my external application thru portal user ..?
    Shyam

    Hi Jithin,
    The link that you've shared talks about a different scenario.
    In my case, I want to pass the portal user id when the user clicks on the Help Link present in the header area.
    I am trying to pass it along with the Help Link Url property of a masthead iview but it is not getting passed to the target Url.
    I would like to know if it is possible to pass the Portal User Id in this way or not.
    Though if we create a appintegrator iview and pass the user id <User.UserID> along with the target Url, it reaches there.
    Thanks & Regards,
    Anurag

  • How we create custom infotype and how to configure with its subtypes.

    hai abap-hr gurus,
    how to create custom infotype and how to configure with its subtypes. when i am creating infotypes i am not getting how to configure subtypes.
    plz help me for this with an example code.
    thanks..
    kiran kumar

    Hi Kiran,
        Please fallow the below steps to create the custom infotype. If you have any quires let me know.
    For Creation of Infotype first Go to Transaction PM01, Enter the custom Infotype number which you want to create, it should be a 4 digit number and have to start with 9xxx.
    then select the `Employee Infotype' radio button
    after that select the `PS Structure Infotype'
    then click on Create… A separate table maintenance window appears
    then Create a PS structure with all the fields you want on the infotype
    Save and Activate the PS structure
    now Go back to the initial screen of PM01
    Click on `All' push button. It takes a few moments
    Click on `Technical Characteristics’. Infotype list screen appears
    Click on `Change'(pencil) button
    Now select your Infotype and click on `Detail' (magnifying glass) button
    Give `T591A' as subtype table & also Give `T591S' as subtype txt tab
    Give your subtype field as subtype field & Save and come back to PM01 initial screen
    Click on `Infotype Characteristics' … Infotype list screen appears
    Click on `Change' (pencil) button & on New Entries
    and then Enter your Infotype number and short text Here we have to set different Infotype Characteristics as per the requirement. (Better open another session with some standard Infotype's infotype characteristics screen and use as the reference
    to fill yours). Now save ur entries
    Now the Infotype is created and ready to use.
    If you want to change the layout of the Infotype as per your
    requirement…
    In the PM01 initial screen…Select `Screen' radio button and give
    2000 as the screen name, then click on edit.
    In the next screen.. Select `Layout Editor' and click `Change'.
    Screen default layout appears…here you can design/modify the
    screen..change the attributes of the fields..etc.
    Save and activate. (Don't forget to `Activate at every level)
    Regards,
    Ramakrishna kotha.

  • Can any 1 tell me how to create budget journal and how to enter journal ?

    hi all+
    Can any one tell me how to create budget journal and how to enter journal against that budget ?+
    Regards+
    Yasir+

    http://download.oracle.com/docs/cd/A60725_05/html/comnls/us/gl/budjrnl.htm#index-Budget-journals-Entering--0
    Enter budget journals to maintain an audit trail for your budget balances. You can use budget rules to calculate budget journal amounts automatically.
    When you post budget journals, the journal amounts update existing budget balances. You can review and change your budget journals before posting them.
    Attention: When you use budget rules in Journal Mode, General Ledger calculates the appropriate debit or credit needed to achieve the balance you enter for the account type.
    Prerequisites
    1. Define a budget
    2.Open one or more years for your budget
    3.Define a budget organization
    4. Assign the "Entered" budget entry type to the accounts for which you want to enter budget journals
    To enter budget journals for a single account:
    1. Navigate to the Enter Budget Journals window.
    2. Specify the Budget Organization for the account to which you want to budget. If the budget organization is password-protected, you must enter the password before you can enter budget journals.
    3. Enter the Budget you want to update. You cannot use a budget that is frozen.
    4. Enter the range of Accounting Periods to which you want to budget.
    5. Enter the Currency of the budget amounts you are entering. The accounts must be assigned to the budget organization for this currency.
    6. Choose Journal Mode from the region poplist to enter budget amounts in a journal format.
    You can also use Single Row Mode or Worksheet Mode to enter budget journal amounts. However, you can only generate budget journals from these entry modes when you use the Enter Budget Journals window.
    Additional Information: When you use Journal Mode, Balance Type is a display-only field. It displays Budget when you are entering budget journals. In the Enter Journals window, this field displays Actual when you are entering actual journals.
    7. Enter or query the Account to which you want to budget. You can also switch to Worksheet Mode to easily query accounts, then return to Journal Mode to enter budget journals.
    8. Enter a Debit or Credit amount for each period. Do not enter journal amounts if you want to use budget rules to calculate and distribute budget amounts.
    9. Choose Create Journals to create a budget journal batch. If you are using budgetary control, you specify a funds action when you create the batch.

  • How to create process chains,and how to use process like and or xor

    Hi,
    How to create process chains,and how to use process like and or xor.
    can any one please give me a example in each.
    Thanks,
    cheta.

    Hi Cheta,
    Here is step by step procedure to create process chains
    Process chain is nothing but executing a process ..(or) loading the data any process we can do in background.. that means.. automatically we can execute our process based on Time or any event..
    Creating Process Chains
    Prerequisites
    If you want to include a load process in the process chain, you need to have already created an InfoPackage.
    You cannot load flat file data from a client workstation in the background. For this reason, you have stored your data on an application server.
    Creating Process Chains
    You have the option of creating a process chain in the process chain maintenance screen directly or by using a maintenance dialog for a process:
    Creating a Process Chain Directly in the Process Chain Maintenance Screen
    You are in the BW Administrator Workbench.
    1. Click on the Process Chain Maintenance icon in the AWB toolbar.
    The Process Chain Selection dialog window appears.
    2. Choose Create.
    3. Enter the technical name and a description of the chain, and confirm your entry.
    The Add Start Process dialog window appears.
    4. Create a variant for a start process.
    1. a. On the Maintain Start Process screen, choose whether you want to schedule the chain directly or whether you want to start it using a metachain.
    2. b. If you choose to schedule the chain directly, enter the start date value for the chain under Change Selections and save your entries.
    The Maintain Start Process screen appears again.
    3. c. Save your entries, return to the previous screen and confirm your entries in the Add Start Process dialog window.
    You are taken to the Plan View of the process chain maintenance screen.
    In the left-hand area of the screen, a navigation area is displayed. In the right-hand area of the screen, the process chain is displayed.
    5. Use the drag-and-drop function to add the relevant processes into your process chain.
    You use the Process Types function to select the processes. This sorts the process types according to different categories. You can also call up InfoPackages and processes for the data target from the separate InfoSources and Data Targets navigation trees.
    Hope this helps
    Regards
    Karthik

Maybe you are looking for