How can I update the path of text insets?

We are starting to include an amount of text insets for FM files.
In this starting period there are changings that happen.
If the name or the path of a text insets change, you have to repeat the
import procedure for every single text inset.
For changes of referenced graphics (path or name) FM has a fine working procedure:
When loading a FM file a message comes up with the uncorrect graphic file. You have
to change the reference and the correction is done.
If you changed the name of the graphic directory you have to change the new name for the
first graphic file and all references will change afterwards automatically.
Both procedures does not work for text insets. My questions:
I'm working with FM 10: Does anybody knows if there is a work-around for me?
Does anybody knows if there are features for processing text insets in FM 12?
Thanks in advance

This is exactly the kind of thing that ExtendScript is made for. I'd say that ES is by far the easiest way, if you know how to use it. This example is but one of many case studies for why scripting knowledge is a big advantage to an FM user.
The following script will go through a whole document and do a search/replace within text inset paths, according the the search and replace strings specified. It is a short, simple script with around 20 lines, and took a short time to write. Compare that with manually changing each inset. It is a perfect example of how a little bit of knowledge can have a huge benefit, both for you the user and the longevity of the FM platform. I encourage anyone to learn more. But before I get out of control, let me just leave it at that and hope that this might be helpful.
Russ
updateTextInsetPaths();
function updateTextInsetPaths()
    var searchString = "some\\path\\string\\to\\change";
    var replaceString = "the\\new\\path\\string";
    var doc = app.ActiveDoc;
    if(!doc.ObjectValid())
        alert("No active document. Cannot continue");
        return;
    var pathsUpdated = 0;
    var inset = doc.FirstTiInDoc;
    while(inset.ObjectValid())
        var path = inset.TiFile;
        path = path.replace(searchString, replaceString);
        inset.TiFile = path;
        pathsUpdated++;
        inset = inset.NextTiInDoc;
    alert("Operation complete. " + pathsUpdated + "path(s) updated.");

Similar Messages

  • How can labview update the string control (text-edit box) after we have pressed the carriage return key on the keyboard during text-editing within that box?

    Dear readers,
    I have been trying to work out how to get labview to detect the event when a 'string' control has been modified, where the user has finished editing the string either by 1) pressing the enter key on the keyboard, or by 2) taking the focus away from the string control again. For example.. if I use the mouse to click on the string control and then I type 1234 into the box, I would like to have a routine that does something once the user hits the Enter key of the keyboard, or when the user takes the focus away from the string control again by clicking on something else. I would like the routine to respond even when the user didn't change anything in the text box (such as when we mouse-click on the edit box to go into edit mode, and then mouse-click on something else to remove the focus with no changes to the contents in edit-box).
    The purpose of my routine is to have a edit-box for a user to change for example the centre-frequency of a vector network analyser, so that the centre-frequency of the network analyser can change once the user finishes entering a new value in the text-edit box by hitting Enter key after the number is keyed in. Even if the user has clicked on the edit box, but changes their mind by mouse-clicking on something else to remove focus from the edit box, I would still like labview to detect the event when the control loses focus, so that the centre frequency can be updated anyway (to the same value that was already in the edit box).
    So far, I've tried set the string control option to 'limit to single line', so that I can try to scan for a carriage return .. '\n' ... pattern in the string. Unfortunately this doesn't work because labview doesn't seem to attach the '\n' to the end of that single line.
    Could someone please suggest ways to set a flag when a user hits Enter during text-edit mode of a string control, or when focus has been removed from the string control?
    While I've only described my problem for controlling a single control parameter on the gpib device, I'd like to make this feature work so that I can do the same kind of thing with other control parameters as well.
    Thanks so much in advance.
    Kenny

    Hi Kenny,
    instead of using the event structure, you can directly achieve to what you want by the KeyFocus property of the string control.
    - Enable Limit to single line option
    - Create the property KeyFocus in read mode and connect an indicator
    Each time you click on the string to modify it KeyFocus is True; when you click away or hit Enter KeyFocus is False.
    You can toggle your settings when KeyFocus changes from True to False.
    Alberto

  • How can I update the thumbnails in the slide panel when a slide has been changed?

    When the text in a slide has been changed, how can you update the thumbnail in the slide panel to reflect this change?
    We translated slides, but the slides in the slide panel are still in English.
    Thanks for your help.

    the slides should update automatically as you type
    are you using a  theme you created yourself, or one you have added for this show?
    when you play the show, does the slides show correctly?  If they are OK you could still show the presentation.
    also what Mac are you using and what graphic crd is installed?

  • How can i  change the column label text in a alv table display

    how can i change the column label text in a alv table display??
    A similar kinda of question was posted previuosly where the requirement was the label text was needed and following below code was given as solution :
    <i>*  declare column, settings, header object
    DATA: lr_column TYPE REF TO cl_salv_wd_column.
    DATA: lr_column_settings TYPE REF TO if_salv_wd_column_settings.
    DATA: lr_column_header type ref to CL_SALV_WD_COLUMN_HEADER.
    get column by specifying column name.
    lr_column = lr_column_settings->get_column( 'COLUMN_NAME1' ).
    set Header Text as null
    lr_column_header = lr_column->get_header( ).
    lr_column_header->set_text( ' ' ).</i>
    My specific requirement is i have an input field on the screen and i want reflect that value as the column label for one of the column in the alv table. I have used he above code with slight modification in the MODIFYVIEW method of the view since it is a process after input. The component gets activated without any errors but while run time i get an error stating
    <i>"The following error text was processed in the system CDV : Access via 'NULL' object reference not possible."</i>
    i have checked in debugging and the error occured at the statement :
    <i>lr_column = lr_column_settings->get_column( 'CURRENT_YEAR' ).</i>Please can you provide me an alternative for my requirement or correct me if i have done it wrong.
    Thanks,
    Suri

    I found it myself how to do it. The error says that it is not able to find the reference object i.e  it is asking us to refer to the table. The following piece of code will solve this problem. Have to implement this in WDDOMODIFYVIEW method of the view. This thing works comrades enjoy...
      DATA : lr_cmp_usage TYPE REF TO if_wd_component_usage,
             lr_if_controller  TYPE REF TO iwci_salv_wd_table,
             lr_cmdl   TYPE REF TO cl_salv_wd_config_table,
             lr_col    TYPE REF TO cl_salv_wd_column.
      DATA : node_year  TYPE REF TO if_wd_context_node,
             elem_year  TYPE REF TO if_wd_context_element,
             stru_year  TYPE if_alv_layout=>element_importing,
             item_year  LIKE stru_year-i_current_year,
             lf_string    TYPE char(x),
      DATA: lr_column TYPE REF TO cl_salv_wd_column.
      DATA: lr_column_header TYPE REF TO cl_salv_wd_column_header.
      DATA: lr_column_settings TYPE REF TO if_salv_wd_column_settings.
    Get the entered value from the input field of the screen
    node_year  = wd_context->get_child_node( name = 'IMPORTING_NODE' ).
    elem_year  = node_year->get_element( ).
      elem_year->get_attribute(
       EXPORTING
        name = 'IMPORT_NODE-PARAMETER'
       IMPORTING
        value = L_IMPORT_PARAM ).
      WRITE L_IMPORT_PARAM TO lf_string.
    Get the reference of the table
      lr_cmp_usage  =  wd_this->wd_cpuse_alv( ).
      IF lr_cmp_usage->has_active_component( ) IS INITIAL.
        lr_cmp_usage->create_component( ).
      ENDIF.
      lr_if_controller  = wd_this->wd_cpifc_alv( ).
      lr_column_settings = lr_if_controller->get_model( ).
    get column by specifying column name.
      IF lr_column_settings IS BOUND.
        lr_column = lr_column_settings->get_column( 'COLUMN_NAME').
    set Header Text as null
        lr_column_header = lr_column->get_header( ).
        lr_column_header->set_text( lf_string ).
    endif.

  • How can we update the last synchronization date and time..on SUP in sccm 2012 R2

    Hi,
        Can you any one please guide me how can i update the last  synchronization date & time in SUP on SCCM2012 r2 , some how its updated as future date and when ever i try to synch the SUP with disconnected WSUS its shows in the wsyncmgr.log 
    "Wakeup for a polling cycle " and  " Wakeupby inbox drop" and "Wakeup by SCF change"  
    Thanks 
    Balaji K

    You'll probably have to call CSS on this one as this not normal by any means. The messages you noted above are completely normal but if that's all you are seeing then there's an issue.
    Have you reviewed wcm.log and wsusctrl.log?
    Jason | http://blog.configmgrftw.com | @jasonsandys

  • How can I update the firmware all at once

    I'm a tech support in a school, approximately our school has over 500 laptops, how can I update the firmware on all laptops at once?

    Apple Configurator is the software you want - and it's free from Apple. However, I'm dubious that firmware can be updated all at once.
    http://help.apple.com/configurator/mac/1.4.1/

  • How can i get the path to config folder placed inside the jar file?

    Hi i have developed an RCP application using eclipse.
    In my application config directory is there.
    When i export my RCP application as JNLP Project the jar file is created which contains config folder inside it.
    When i download the application using java web start , how can i get the path to config folder placed inside the jar file?
    Will the config folder exists in local cache in my system?
    Help needed.
    -Deepak

    -- This works in CS6:
    tell application "Adobe InDesign CS6"
      set myDocument to active document
      set selectedRectangles to selection of myDocument
      set theGraphicsLink to file path of item link of (graphic 1 of (item 1 of selectedRectangles))
    --> "Macintosh HD:folder/folder/filename.tif"
    end tell

  • When i try to update software for my 3rd Gen iPod Touch to version 5 i get the message 'This version of iTunes (9.2.1) is the current version'. My Mac OS is 10.4.11. How can I update the iPod software?

    When i try to update the software for my 3rd Gen iPod Touch to version 5 i get the message 'This version of iTunes (9.2.1) is the current version'. My Mac OS is 10.4.11. How can I update the iPod software?

    The later iOSs requires at least OSX 10.5.8 for the Mac.  You need iTunes 10.5 but 10.4.11 only goes to 9.x.. 10.5.8 is a paid upgrade.
    Are you sure that you have a 3G iPod?  If it is 8 or 16 GB it is a 2G and those can only go to 4.2.1 (also requires 10.5.8 or later). A 32 GB can be either  2G or 3G. To identify yours:
    Apple - Support - Check Your Service and Support Coverage
    Identifying iPod models

  • How can I get the path of an existing file????

    Hi.
    I'm a newbie in Jsp development, so this question may appear trivial.
    How can I get the path into a String of an exixting file ..like ...
    String thepath = path_of("my file.txt");
    Thanks for your help.

    Try
    application.getRealPath("myFile.txt")

  • How can I specify the path in Form Builder 9.0

    Hi, everyone,
    could anybody tell me how can I specify the path in Form Buidler 9.0? there is problems when I want to attach library in form builder. thanks to Kuldeep RAwat and Natalia Vidal, I know I should specify the path, but I still don't know how to specify, how can I do?
    besides, when I run a form, sometime there will be a warnig:
    Please acknowledge message
    what's that meaning?
    thank you very much for your great help

    Shay Shmeltzer thank you very much for your so quickly response. I have modified the file and my form can run now!
    but, when I open my form, it always suggest me:
    FRM-10102: Cannot attach PL/SQL library TalbotStandard. This library attachment will be lost if the module is saved.
    so everytime I open my form, I must attach the library manully. I don't know the reason. do you know that or anybody else knows that? thank you very much!
    have a good weekend :-)

  • How can i change the sequence of text element in standard driver program ?

    Hi,
    can u tell me how can i change the sequence of text element in standard  sapscript driver program.. without making a zcopy of standard driver program.
    My problem is when MEDRUCK form is getting printed for PO print , header text is coming before item. But the requirement is to come it after item.So how cani do that without making the zcopy of  SAPLMEDRUCK program..Is there any enhancement point in SAPLMEDRUCK driver program..where i can put my customise code for changing the sequence of text element ?

    Hi,
        Just copy the MEDRUCK to ZMEDRUCK. No need to copy the driver program.
    1) SE71Menu > Utilities > COpy from Client
    MEDRUCK ->>Client 000
    New formname ZMEDRUCK
    2) Now open the ZMEDRUCK in DE language in SE71
    3) Menu > Utilities > Convert original Language
    Change DE  to EN, save and activate
    4) Now open the ZMEDRUCK in EN language
    5) Goto Pagewindows > Main window,
    Look for the HEADER text Text element, copy the whole code under this Text element just after the ITEM text Text element, and comment the HEADER text above.
    Now the Header text Text element will be below ITEM text only. This will full fill your requirment.
    Now goto NACE transaction and add the copied ZMEDRUCK to the EF application.
    Regards
    Bala Krishna

  • How can i update the itunes in my external hard drive?

    When i try to update the itunes on my external hard drive, it creates a new application in my computers hard drive. How can i update the one on my external hard drive?

    there's no advantage to having the application on your external drive, you should leave it in your applications folder on your internal drive. if you insist on changing the app's location, you'll always have to then copy the app by hand to the external drive

  • How can I update the project varibles  in OBPM 10.3

    Hi All,
    OBPM version : 10.3.2 (weblogic Enterprise version)
    How can I update the project variables from the External process?
    I per my knowledge we use termination wait activity and notify the same from the external process. I am successfully do this but I am facing the performance issue with this and sometimes even data sources pool is getting exhausted.
    Could you please tell me is there any other way to update the project variables?
    Thanks in advance.
    Narasimha
    Edited by: Narasimha on Mar 2, 2011 4:19 AM

    I do not disagree with Mark about using Message Waits to update project variables. I'm right in the middle of logic right now that is doing just that.
    If you have thousands (or in your case millions) of instances to update all at once, you might want to also want to consider another approach. I obviously do not know your process and sure you've thought of this, but you could use a database to store this same information that you are currently using project variables for. You'd need a table that has the instance's unique id (e.g. case id, loan number, claim number) as the primary key and then have columns to store the information you are currently storing in project variables.
    Taking this approach, you'd be updating the milliions of rows in the database very quickly. You could still have project variables in your process, but they would be set at the beginning of a Screenflow or in an Automatic activity using a SELECT statement against the database table using the unique id of the instance as the key.
    Dan

  • How can I update the "basic" Adobe Flash Player that is in my Samsung Smart TV?

    How can I update the "basic" Adobe Flash Player that is in my Samsung Smart TV?

    Any update would come from Samsung, but in low-margin products like TVs, it's pretty uncommon for OEMs to provide ongoing maintenance over a large span of years.  You may find that you'll get a better experience from a dedicated streaming box like ChromeCast/Roku/etc.

  • I have an iPad that I want to update to IOS 5.1. I have several apps that each were installed using a different iTunes ID. How can I update the IOS without losing the apps?

    I have an iPad that I want to update to IOS 5.1. I have several apps that each were installed using a different iTunes ID. How can I update the IOS without losing the apps?

    To update your phone requires using the latest version of iTunes, on your computer, as well as Internet access. The update to iOS 5.0 or higher is an erase/restore deal, so you not only have to make sure all of the content, currently on your phone, is on your computer and accessible, you need to update iTunes first, have Internet access, then update your phone. There is no way around this fact. You could go to an Apple store or use another computer, but you run the risk of losing all of your data it you do that.

Maybe you are looking for

  • Creation of Server Proxy for  Message interface with External Defination

    Dear All, I am getting a problem while generating a server proxy for the inbound interface . The request message used in the inbound interface is a external definition which is uploaded using a XSD file. The XSD file was supplied by a third party whi

  • Exchange 2010 to Exchange Online migration Error

    Hello, I am in the middle of an Exchange 2010 to Office 365 cutover migration and i keep getting errors when trying to create a migration endpoint on Office 365 hence the migration can't progress.  I have sucessfully completed step one which is to ve

  • Preview and Finder Sidebar

    When looking at photos in finder can not move photos to the preview applications sidebar, for viewing as a slide show only one photo will show in the sidebar.

  • Using iMessage on my macbook

    I updated my system to os x 10.8.2 and could use iMessage for my phone through my computer, but for some reason I can no longer send iMessages from my computer using my telephone number; I can only send iMessages from my computer using my apple ID. I

  • Installing Arch64 via 32-bit vm

    Hi! I want to install Arch64 on my HD via VirtualBox (as described here: https://wiki.archlinux.org/index.php/In - VirtualBox ).  My processor apparently does not support 64-bit virtualization, i.e. the virtual machine will run at 32-bit.  Is this a