Batch consolidate and vprs

Hi, Need some advise from some SAP guru. In our current system, we already setup the batch management. When perform delivery and billing, most model ship- out, will using more than one batch.
Case:
     Model A
     Sales Price => 6.05
     Standard Cost => 4.00
The PGI [vl02n] will result to create of two material document (601) and also posting to FI-GINI account.
<u>Batch | Qty     | Price     | Amount</u>
aaa      | 33     | 4.05     | 13.37
bbb     | 67     | 4.05     | 27.14
Total      40.51
The billing [vf01], will copy the delivery information as seperate batch and this will be use as to calculate the total invoice. Posting to FI-GINI will also be occur.
<u>Batch | Qty | Price | Amount  | Cost (VPRS) | Cost Amt</u>
aaa    | 33   | 6.05  | 19.97      | 4.05             | 13.37
bbb    | 67   | 6.05  | 40.54      | 4.05             | 27.14
Total 60.51----
40.51
In Invoice printing, we only print out one record as we already add-out the batch qty as total.
Model       |Qty | Price |     Amount
Model A  |100 | 6.05  | 60.51
PROBLEM : So now, the problem will be customer ask the 100x6.05 => should be 60.50. Not 60.51.
Last time, we configure to accumulate the batch qty to item total. The result look promising. But problem occur on the FI-GINI account.
1. Billing qty set to 'H' in VTFL for batch and total item.
2. IMG > Sales & Dist > Sales > Sales Document Item > Define Item Category. Statistical value set to 'X' for batch item.
The PGI [vl02n] will still result to create of two material document (601) and also posting to FI-GINI account.
<u>Batch | Qty | Price |Amount</u>
aaa   | 33  | 4.05  | 13.37
bbb   | 67  | 4.05  | 27.14
Total 40.51
The billing [vf01], will accumulate the delivery information as one total item and this will be use as to calculate the total invoice. Posting to FI-GINI will also be occur.
<u>Qty | Price | Amount | Cost (VPRS) | Cost Amt</u>               
100 | 6.05 | 60.50 | 4.05 | 40.50
In Invoice printing, only print out one record follow to vf01.
<u>Model |Qty | Price | Amount</u>
Model A | 100 | 6.05 | 60.50
Invoice to customer OK.
PROBLEM : GINI account during PGI will be 40.51 but during billing will be 40.50. So debit and credit will be 0.01 diff.
Any help on what I may need to do?<u></u>

thanks.  That worked. Although I still don't know why when I consolidate
and transcode, it doesn't trim my master file down smaller (I have a 6 GB
quicktime in my sequence, but with all my trims, I'm only using less than
half of that quicktime in my sequence - yet it still insists on copying
over the entire 6gb file, rather than trimming it down to only the parts
that I used in the final cut (it just makes me have to send more than I
need to my colorist - therefore making it a painfully slow upload process)
On Thu, Apr 23, 2015 at 11:17 AM, Trent Happel <[email protected]>

Similar Messages

  • What is the field and Table for "Batch Class" and "Class Type" in QM.

    Hi All,
    What is the field and Table for "Batch Class" and "Class Type" in QM.
    Thanks,

    Hi,
      For batch class the class type value is '023' . This you can find from KLAH table and the fileld for class type is KLART..
    And also all the data related to batch class are found in tables INOB, KLAH,KKSK and for the characeteristics of batch materials you can refer AUSP table.
    In INOB table, for batch class, you need to give 023 in KLART field and  value MCH1 in OBTAB filed.
    Please check this and let me know if this you need any more details?

  • Batch to Batch Transfer and Tracking

    Question,
    Since Batch to batch material transfer is possible using SAP standard functionality.
    On my floor, the raw material i am consuming is batch managed and causing accounts error and negative stock due to wrong batch no. posting at the time of Co11.
    due to requirement of our customers, our plant must run with proper tracking of each batch, means finish goods to raw material (specific batch) relation should be there in system.
    If I maintain back flush function for BOM components in such a way that I always consume raw material from one batch (xxx) from production S-LOG. what i will do, I will refill that particular batch -xxx by transfer material from batch zzz (by batch to batch transfer) when needed to back flush.
    Back flush will happen always from one batch which will reduce accounts error and negative stock generation.
    Question is, will i be able to track and can built relation of raw material batch zzz and product FG?
    if yes how? if no then what could be the solution for this problem.
    Mr.Daar

    Hi,
    I think you're scenario is going little bit complex by doing transfer postings batch to batch this is very complex you know each time you have to do suppose if you have huge raw materials it leads to complexity any have for this point I can say is
    while transferring the batches from XXX to ZZZ you give reference production order number in the material slip or document header text so that you can track the batches to which production order you have transferred.
    in MSEG table you can trace the consumption of raw materials based on the Production order
    and with 309 movement type you can trace the batch transfers I thing you have to develop a report for this.
    Regards,
    Ravi

  • Stock Report with batch number and its Charactristc values

    Our material are batch managed and Char values are entered at the time of GR. We need to prepare stock report showing batches for the material, their stock and characteristics values.
    Like to know what tables we should use to find the char values. I could not find value in table CAWN

    Hi,
    For characteristcis link and values use below tables:
    Characteristics :
        CABN                   Characteristics ( o.a. batch/vendor)   
        CABNT                 Characteristics description
        CAWN                  Characteristics  ( o.a. material)
        CAWNT                Characteristics description
        AUSP                   Characteristic Values
       Class types and objects :
        TCLAO                 Several class types for object
        TCLA                    Class types ( vb. lfa1 => v10 en 010)
        TCLAT                  Class type text
        TCLT                    Classifiable objects
        TCLC                   Classification status
       Links :
        INOB                    Link between Internal Number and Object
        KLAH                  Class header data  
        KSSK                  Allocation Table: Object (vb.matnr) to Class 
        KSML                  Characteristics for a class (internal number)
    for batch stock 0 use tables ilken MCHB, MCHA etc,
    hope this helps
    Reg
    Dheeraj

  • I travel - a lot. I have apple accounts in Canada, US and Brazil. I want to consolidate and listen to my music and movies on one device. Right now there is a 90 day limit per account on each device. How can I download and use all my purchases?

    There must be a way for people who live in several countries or speak several languages to purchase music and movies in various national Apple IDs and then consolidate and listen to the media they own on just one device. How can I do that?

    There must be a way to get all the music and movies into one place. Maybe on Laptop rather than iPhone or iPad. I can get one set to one ID and the other to another, then switch to the third ID since I have not changed the two in 90 days. But I would need to download all media during the time each device is on each ID. Must be possible, but I don't know how.

  • I have multiple iPhoto libraries w/ duplicates in several. How can I consolidate and find the dupes? Some photos are versions of the original.

    I have multiple iPhoto libraries w/ duplicates in several. How can I consolidate and find the dupes? Some photos are versions of the original. On my iMac, I also have many folders containing some of the same photos. My computer is used for both personal and business purposes. My libraries should be separated, one for each.

    To merge libraries use iPhoto Library Manager - http://www.fatcatsoftware.com/iplm/ -  or Aperature
    To find duplicates within an iPhoto library use iPhoto Library Manager - http://www.fatcatsoftware.com/iplm/ - 
    Photos that are not in an iPhoto library can be imported telling iPhoto not to import duplicates (an imperfect procews) and then IPLM can find the duplicates
    As to keeping seperate libraries - only you can do that - IPLM can move photos between libraries for you but only you can know which photos should be in which library
    LN

  • Batch determination and BAPI_GOODSMVT_CREATE

    Hi experts!
    I'm new to batch determination and I'm facing an issue. I've set up a batch determination configuration and it works fine when I post a goods movement in dialog process (MB11) entering * in the batch field.
    Now I'm trying to do the same with BAPI_GOODSMVT_CREATE, but if I enter * in the batch parameter I get an error message M7116: "The storage location/batch function * is not defined here". If I leave it blank i get the error message "Enter batch".
    Hope somebody has any clue.
    Thanks
    Fabio Scaravelli

    Hi Fabio,
    I'm facing the same problem. Did you get a solution to this problem? Please let me know.
    Thanks.

  • Batch Management and Others

    Dear Experts,
    Client system is already having some materials.From these 100 materials ,we would block the 99 materials and the rest material(say X) will be managed in batches.To do this I have thought in the following way:
    1.Posting stock to the  the material X through material to material transfer.
    2.Activate deletion flag to the 99 materials and change the deletion flag message type to Error message from the warning.
    3.Blocking the transaction of these materials for two to three hours.
    4.Create a new material and manage it with batch with classification.(say Y)
    5.Material to material stock tranfer from X to Y.
    6.Change the BOMs where these 99 materials were used.
    7.Material assignment to routing operation does not require change as components were assigned to operation through default first operation,which will be managed by the system itself when I change the BOM.
    Anything more I require to plan..Pl advice
    Regards
    Reshmi

    Dear Rupesh,
    My req is I would like to remove the redundant materials, instead I shall manage these materials through a single material by batch management with classification.but the materials are already in the system without batch management.So until or unless i remove the stock ,the material can not be batch managed.And to remove all materials by a single materials I require the existing stocks of the materials to be updated with the single material,which can be done through material to material transfer.I think I have cleared the issue.
    Regards
    Reshmi

  • How value for PR00 and VPRS is calculated?

    Hi Everybody,
    Can anyone answer me the below mentioned question....
    1.Standard price in material in a/c view which comes in Pricing procedure as VPRS..............is that manufacturing cost(COGM)? Does it come from production?
    2.We calculate profit comparing standard price(VPRS) with the price which we get after deducting all the discounts and adding all taxes and freght.How do we fix up or determine base price(PR00)?Is it COGS?Who actually give or decide PR00 price in any Organization?
    3.Dfference between PR00 and VPRS.
    I wll really be grateful to get a clear picture of this.
    Thnx in advance.
    With regards,
    Subh

    Hi,
    PR00 - Basically this will be determined automatically during the sales order processing with the use of condition records
    PR00 indicates the basic price exclusive of any addition of discounts, taxes, etc.
    VPRS in requirement is 4,This pulls the condition type,and in item category we mention determine cost,With the help of this the cost of the material is dragged to the sales order
    VPRS is the condition which fetches the moving avg pricce of the material which gets determined by the invoice verification value for purchse orders. it may vary or be constant depending on the fact if its MAP or std price. these settings are in the material master acc./costing views. VPRS works for non-BOM scenarios. in BOM scenarios there is a cond called KUMU. kumu adds the costs of all the shild components to the header part. VPRS and KUMU form and exclusion grp i.e only once can be present in the sales order.
    Hope this helps you.
    Regards,
    Rakesh

  • Batch-find-and-replace.jsx

    Hi there, I wrote a batch-processing script for find change queries and thought I share it with you. You can get it over here 
    You can process GREP, TEXT, GLYPH and OBJECT searches. 
    Purpouse
    While creating books in InDesign with several documents we always come across some find change queries that need to be used again, and again, and again. To make this process easier you can just grab their names and put them into a list. The script will than try to process all your queries in one click. 
    prerequisites
    make sure you have a toml file.
    make sure the toml file is next to the script.
    make sure the toml file has the right formatting (see below in section TOML)
    if you want the script to autoexecute (without toml file selection), make sure the .toml file has the right name: "batch-find-and-replace.toml"
    make sure your fcqueries work right
    Usage
    Place the script and the toml file into your Scripts Panel Folder 
    define some find and change queries and save them via the InDesign dialogue.
    get the xml file names and add them to the "batch-find-and-replace.toml" file in the right spot. text search goes into text.files = [], grep search goes into grep.files = [] and so on. Make shure to remove the .xml from the filename. You can find these files on:
    Mac OS Users[username]\Library\Preferences\Adobe InDesign[Version][Language]\Find-Change Queries[query type] 
    Windows XP Documents and Settings[username]\Application Data\Adobe\InDesign[Version][Language]\Find-Change Queries[query type] 
    Windows Vista and Windows 7 Users[username]\AppData\Roaming\Adobe\InDesign[Version][Language]\Find-Change Queries[query type] 
    the .toml file should be located next to the script file and have the  appropriate name (batch-find-and-replace.toml). If so the script wont ask for the toml file and process the data right away. If not the script will ask you to select the .toml file.
    Thats it. Watch the magick happen.
    TOML
    Tom's Obvious, Minimal Language is a simple markup language that makes settings human readable. It is still in development and may change a lot. But still. It is a pretty easy language and can be learned by anyone.
    The basic toml filer looks like this: 
    # these are the basic settings
    # the MUST be there
    do_text = true
    do_grep = true
    do_glyph = true
    do_object = false
    # now the file names
    # they have to be in one line
    # the toml specs say you can break lines in arrays
    # but the toml.js does not allow that at the moment
    [text]
    files = ["my_first_text_find_and_change","another one"]
    [grep]
    files = ["somegrepsearch", "find tabs", "something else"]
    [glyph]
    files = []
    [objects]
    files = []
    MUST HAVE Settings
    With the do_text, do_object, do_grep and do_glyph you can define if the script should do the corresponding find and replace. Set them to true or false.
    CAN HAVE Settings
    In the [text],[grep],[glyph] and [objects] areas you can define the filenames that should be processed. Make sure the filenames are written right. If there is a file mentioned that does not exist the script will throw an error. It will try to process all the .xml files it can find.
    !IMPORTANT! you MUST remove the .xml from the filename in the list as shown above.
    The Script is here --> https://raw.github.com/...find-and-replace.jsx
    The basic .toml file here --> https://raw.github.com/...ind-and-replace.toml
    The Readme here --> https://github.com/...lob/master/README.md
    And the whole package here --> https://github.com/...e/archive/master.zip

    Great script, it worked perfectly with grep, text, glyph, not only worked with OBJECTS, because I do the same operation and does not work. Can you give me a hand? Thank you.
    In arquivo.toml is thus:
    # These are the basic settings
    # The MUST be there
    do_text = true
    do_grep = false
    do_glyph = false
    do_object = true
    do_all_docs = false
    # Now the file names
    # They have to be in one line
    # TomL the specs say you can break lines in arrays
    # But does not allow the toml.js que momento
    [text]
    files = ["_OVER_BLACK_TXT", "_OVER_CORPROF_TXT"]
    [grep]
    files = []
    [glyph]
    files = []
    [object]
    files = ["_OVER_BLACK_FILL", "_OVER_BLACK_STRK"]
    This is the image of the Scripts Panel folder:

  • I need to batch rename and relink files in indesign

    I have a whole bunch of files that I need to rename ( I need to add a prefix on to the front eg. a whole group of files called "plan.jpg" 01.jpg, 02.jpg, etc... need to now read ORD_plan.jpg, ORD_01.jpg, etc...) I can batch rename the files in adobe bridge, but I have to go in one by one and re-connect the links. Is there a script which can batch rename and relink all the files? 
    Thanks!

    This biterscripting script may possibly help. It takes two input arguments.
    directory - directory under which the .jpg files are located
    prefix - prefix which will be added to each file's name
    # Script RenameJpg.txt
    var str directory, prefix, list, filepath, name
    cd $directory
    find -n "*.jpg" > $list
    while ($list <> "")
    do
        lex "1" $list > $filepath ; stex -p "^/^l[" $filepath > $name
        set $name = $prefix+$name
        system copy ("\""+$filepath+"\"") ("\""+$name+"\"")
    done
    This is the way you would use it - copy and paste the script code into file C:/Scripts/RenameJpg.txt, then enter this command into biterscripting.
    script "C:/Scripts/RenameJpg.txt" directory("C:/test") prefix("ORD_")
    It will rename C:/test/plan.jpg to C:/test/ORD_plan.jpg, C:/test/01.jpg to C:/test/ORD_01.jpg, etc.
    Important: I am using the 'system copy' command so that files are copied instead of renamed. Once you are happy with the test, you can change that command to 'system rename'.
    Also, if the .jpg files are within subfolders of C:/test, change the 'find -n' to 'find -r -n'. -r means recursive = search in subfolders. Syntax for the find command at http://www.biterscripting.com/helppages/lf.html
    Message was edited by: Peter Spier to change 'path' to 'filepath' per post below
    Message was edited by: Peter Spier to change "perfix to "prefix"

  • Batch renaming and relinking in InDesign CS4

    Is there a plug-in available for InDesign that will batch rename and relink placed images?
    In Quark, I used Badia Link Renamer which worked perfectly but it's not available for InDesign. (Was told they hope to have it incorporated into BigPicture for CS5.)
    Is there something similar currently available for InDesign?
    Essentially I need it to rename and relink files with random names to structured names such as:
    001_Cust_000123456789_art_r1.tif
    (I love that Bridge does batch renaming but then I have to manually update links in InDesign which is extremely time-consuming. I've also manually renamed/relinked files individually with Adobe Dialogue but it doesn't seem to be part of CS4.)
    Any help or suggestions would be greatly appreciated! Been looking for something for months.
    Thanks!

    Here is my last version of the script, it deals with multiple instances of the same file.
    Kasyan
    var myDoc = app.activeDocument;
    var myAllLinks = myDoc.allGraphics;
    var myMultipleLinks = new Array();
    var myLinksCounter = 1;
    var myPrepend = prompt("Example: thebook_08765", "Job description", "Please enter job description");
    if (!myPrepend) exit();
    var response = confirm("Warning: You are about to rename all images linked to the foremost Indesign Document - proceed? Keep in mind - it is not reversible!", false, "Rename Links Script");
    if ( response == true )
         WriteToFile("\r--------------------- Script started -- " + GetDate() + " ---------------------\n\n");
         for ( k = 0; k < myAllLinks.length; k++ )
              var myLinkName = myAllLinks[k].itemLink.name;
         crearLabels();
         var myPages = myDoc.pages;
         // Pages
         for ( p = 0; p < myPages.length; p++ )
              var myPageNumber = pad000(myPages[p].name);
              var myLinks = myPages[p].allGraphics;
              var myASCII = 97;
              for ( k = myLinks.length - 1; k >= 0; k-- )
                   var myLink = myLinks[k].itemLink;
                   if (myLink.extractLabel("relinked") != "yes") {
                        var myOldLinkName = myLink.name;
                        var myLinkUsage = LinkUsage( myLink );
                        var myExtension = myOldLinkName.substr(myOldLinkName.lastIndexOf( "." ));
                        if (LinkUsage(myLink) == 1)
                             var myNewLinkName = myPrepend + myPageNumber + String.fromCharCode( myASCII ) + myExtension;
                             var myOldImageHDfile = new File( myLink.filePath );
                             var myRenameResult = myOldImageHDfile.rename( myNewLinkName );
                             if (myRenameResult)     {
                                  myLink.insertLabel("relinked", "yes");
                                  myLink.relink( myOldImageHDfile );
                                  try {
                                       myLink = myLink.update();
                                  catch(err) {}
                                  myASCII++;
                                  WriteToFile(((myLinksCounter < 10) ? (" " + myLinksCounter) : myLinksCounter) + " - " + myOldImageHDfile.name + " --> " + myNewLinkName + "\n");
                                  myLinksCounter++;
                             else {
                                  if (new File(myOldImageHDfile.parent + "/" + myNewLinkName + myExtension).exists) {
                                       WriteToFile("CAN'T RENAME LINK -- " + myOldImageHDfile.name + " to " + myNewLinkName + " because the file already exists\n");
                                  else {
                                       WriteToFile("CAN'T RENAME LINK -- " + myOldImageHDfile.name + "\n");
                        else {
                             if (!IsObjInArray(myLink, myMultipleLinks)) {
                                  myMultipleLinks.push(myLink);
         var myMasterSpreads = myDoc.masterSpreads;
         // Master spreads
         for ( m = 0; m < myMasterSpreads.length; m++ )
              var myMastSpr = myMasterSpreads[m];
              var myPageNumber = myMastSpr.name;
              var myPrefix = myMastSpr.namePrefix;
              var myLinks = myMastSpr.allGraphics;
              var myASCII = 97;
              for ( n = myLinks.length - 1; n >= 0; n-- )
                   var myLink = myLinks[n].itemLink;
                   if (myLink.extractLabel("relinked") != "yes") {
                        var myOldLinkName = myLink.name;
                        var myExtension = myOldLinkName.substr(myOldLinkName.lastIndexOf( "." ));
                        if (LinkUsage(myLink) == 1)
                             var myLinkLetter = (myLinks.length == 1) ? "" : String.fromCharCode( myASCII );
                             var myNewLinkName = myPrepend + '_master_' + myPrefix + myLinkLetter + myExtension;
                             var myOldImageHDfile = new File( myLink.filePath );
                             var myRenameResult = myOldImageHDfile.rename( myNewLinkName );
                             if (myRenameResult) {
                                  myLink.insertLabel("relinked", "yes");
                                  myLink.relink( myOldImageHDfile );
                                  try {
                                       myLink.update();
                                  catch(err) {}
                                  myASCII++;
                                  WriteToFile(((myLinksCounter < 10) ? (" " + myLinksCounter) : myLinksCounter) + " - " + myOldImageHDfile.name + " --> " + myNewLinkName + "\n");
                                  myLinksCounter++;
                             else     {
                                  if (new File(myOldImageHDfile.parent + "/" + myNewLinkName + myExtension).exists) {
                                       WriteToFile("CAN'T RENAME LINK -- " + myOldImageHDfile.name + " to " + myNewLinkName + " because the file already exists\n");
                                  else {
                                       WriteToFile("CAN'T RENAME LINK -- " + myOldImageHDfile.name + "\n");
                        else
                             if (!IsObjInArray(myLink, myMultipleLinks)) {
                                  myMultipleLinks.push(myLink);
         // Multiple images
         if (myMultipleLinks.length > 0) {
              for ( a = myMultipleLinks.length - 1; a >= 0; a-- )
                   processMultiUsedLinks(myMultipleLinks[a]);
         WriteToFile("\r--------------------- Script finished -- " + GetDate() + " ---------------------\r\r");
         if (myLinksCounter == 0) {
              alert("No links have been renamed", "Rename Links Script");
         if (myLinksCounter == 1) {
              alert("One link has been renamed", "Rename Links Script");
         else if (myLinksCounter > 1) {
              alert(myLinksCounter  + " links have been renamed", "Rename Links Script");
    //--------------------------------------------- Functions ------------------------------------------------
    // Check how many times the link was placed
    function LinkUsage(myLink) {
         var myLinksNumber = 0;
              for (var c =  0; c < myDoc.links.length; c++) {
              if (myLink.filePath == myDoc.links[c].filePath) {
                   myLinksNumber += 1;
         return myLinksNumber;
    // Relink the links placed more than once
    function processMultiUsedLinks(myLink) {
         var myExtension = myLink.name.substr(myLink.name.lastIndexOf( "." ));
         var myMultiUsedLink = new Array();
         var myAllLinks = myDoc.links;
         for (var d = 0; d < myAllLinks.length; d++)  {
              if (myAllLinks[d].filePath == myLink.filePath) {
                   myMultiUsedLink.push(myAllLinks[d]);
         try {
              myLink.show();
         catch(err) {}
         var myNewLinkName = prompt ("Enter a name for this image", GetFileNameOnly(myLink.name), "This image is placed " + myMultiUsedLink .length + " times");
         if (myNewLinkName) {
              if ( myNewLinkName + myExtension != myLink.name ) {
                   var myOldImageHDfile = new File( myLink.filePath );
                   var myRenameResult = myOldImageHDfile.rename( myNewLinkName + myExtension );
                   if (myRenameResult) {
                        myLink.insertLabel("relinked", "yes");
                        myLink.relink( myOldImageHDfile );
                        try {
                             myLink = myLink.update();
                        catch(err) {}
                        WriteToFile(((myLinksCounter < 10) ? (" " + myLinksCounter) : myLinksCounter) + " - " + myOldImageHDfile.name + " --> " + myNewLinkName + "\n");
                        myLinksCounter++;
                        for (f = myMultiUsedLink.length-1; f >= 0 ; f--)
                             var myCurrLink = myMultiUsedLink[f];
                             if ( myNewLinkName + myExtension != myCurrLink.name ) {
                                  myCurrLink.insertLabel("relinked", "yes");
                                  myCurrLink.relink( myOldImageHDfile );
                                  try {
                                       myCurrLink = myLink.update();
                                  catch(err) {}
                   else     {
                        if (new File(myOldImageHDfile.parent + "/" + myNewLinkName + myExtension).exists) {
                             WriteToFile("CAN'T RENAME LINK -- " + myOldImageHDfile.name + " to " + myNewLinkName + myExtension + " because the file already exists\n");
                        else {
                             WriteToFile("CAN'T RENAME LINK -- " + myOldImageHDfile.name + "\n");
         UpdateAllOutdatedLinks();
    // Clear labels in case this script has been already run on the current document
    function crearLabels() {
         for (var f =  0; f < myDoc.links.length; f++) {
              if (myDoc.links[f].extractLabel("relinked") != "") {
                   myDoc.links[f].insertLabel("relinked", "");
    function UpdateAllOutdatedLinks() {
         for(var myCounter = myDoc.links.length-1; myCounter >= 0; myCounter--){
              var myLink = myDoc.links[myCounter];
              if (myLink.status == LinkStatus.linkOutOfDate){
                   myLink.update();
    function pad000(myNumber) {
         if (myNumber >= 1 && myNumber <= 9) {
              x =  "0" + "0" + myNumber;
         } else if (myNumber >= 10 && myNumber <= 99) {
              x = "0" + myNumber;
         } else if (myNumber >= 100 && myNumber <= 999) {
              x = myNumber;
         return x;
    function GetFileNameOnly(myFileName) {
         var myString = "";
         var myResult = myFileName.lastIndexOf(".");
         if (myResult == -1) {
              myString = myFileName;
         else {
              myString = myFileName.substr(0, myResult);
         return myString;
    function IsObjInArray(myObj, myArray) {
         for (x in myArray) {
              if (myObj.filePath == myArray[x].filePath) {
                   return true;
         return false;
    function WriteToFile(myText) {
         myFile = new File("~/Desktop/Rename Links Script.txt");
         if ( myFile.exists ) {
              myFile.open("e");
              myFile.seek(0, 2);
         else {
              myFile.open("w");
         myFile.write(myText);
         myFile.close();
    function GetDate() {
         var myDate = new Date();
         if ((myDate.getYear() - 100) < 10) {
              var myYear = "0" + new String((myDate.getYear() - 100));
         } else {
              var myYear = new String ((myDate.getYear() - 100));
         var myDateString = (myDate.getMonth() + 1) + "/" + myDate.getDate() + "/" + myYear + " " + myDate.getHours() + ":" + myDate.getMinutes() + ":" + myDate.getSeconds();
         return myDateString;

  • OO Batch Model and optimised Java for batch???

    Hi All,
    I'm looking to see if there is any literature of OO models for batch processing and optimising of batch java.
    Thoughts & comments welcome.........
    I have an existing batch process running on a mainframe which is very successful. We would like to leverage this by building a similar batch process to run 'anywhere' so likely options are Java/Unix.
    There are many patterns/models etc for OO based GUI / interactive processes but very few for (that I have found) for batch.
    I have worked mainly with mainframe batch and online applications and come with the baggage that activity that can be processed in batch should be to avoid overloading the online container (CICS region, web server etc).
    I believe that this continues to be true, as well as the particular data we are processing benefits from efficiencies of batching the data together to store eventually on tape.
    In view of not finding any literature (which I doubt is the case) it seems that the problem is the same, so probably the solution is also similar.
    In the procedural solution, a Jackson (or similar), would have been designed which would then reflect the procedures build into the code.
    I expect that if instead of procedures classes where defined, certainly at a higher level then the design would still be ok.
    (So a the higher level you have a 'main' class, which instansiates a 'read' io object, a processing object which handles the actual processing activity and a write io object).
    The level to which would would combine procedures together, or further split them out, would then be the main point of discussion.
    ( However am open to the above suggestion being completly wrong).
    Then there is efficient configuration when processing........
    When running on the mainframe the code is loaded once, the memory for all the working storage strucures created. When actually processing there is no instantiating classes, or running the garbage collector etc. I re-use the same memory for each new record red in / processed / written out and all the code is normally loaded once when first called and the same code is re-used until all records processed.
    Is there any way that I can replicate this within Java either in it's own JVM or running in a container such as websphere? When processing the volume of data that we do (20 million db entries + 40GB of document data avg) then anything not optimised is costing money and available processing time.

    I suspect that batching is underused thoughrather
    than overused.Can you elaborate on that? What kind ofconditions
    would you advocate batching for? Running daily, monthly, etc reports. Or something
    that feeds those.I don't disagree, I just don't even see this as 'batching'. Batching to me is when you take something that could be done incrementally and purposely doing it in large groups at set times or time-periods. If you have a daily report and you do it daily, you're just doing the most obvious approach. It might not even be the most efficient.
    >>
    I have some experience working with batch java
    applications running in Unix. And I can tell you
    that they did not improve anything. I suspect I would agree with that. I am not
    advocating that the batching be done in java. Just
    that idea that an 'incremental' process that requires
    moving data versus a 'batch' process that doesn't
    isn't something that I would normally consider a good
    idea.I think we are thinking about different things. I'm really just talking about incremental or real-time vs. batching.
    They were
    actually the source of many of our issues. That
    added abitrary time lags during times of lowvolumes,
    sometimes adding 30 minutes or more to theprocessing
    of a transaction as it waited for the nextscheduled
    batch. They also made our backlogs worse in timesof
    high volumes because the incoming data flow was
    uneven, we would often get big batches of datafrom
    partner systems (more batching, gotta love it)that
    hit us when our batch process was sleeping. 5,10,
    15 minutes would pass where the server ran at 10%
    capacity while huge backlogs were piling up. It
    didn't make anything better. It was just causing
    idling.
    What was the timeliness requirements for the
    processing? Did it need to be completed by 2am in
    the morning? Or could it have really just been
    completed on demand?It was B2B transactions ASAP was the time requirement. I guess the upper limit was 6 hours or so. But batching didn't really decrease the processing time per transaction anyway and the server was never dedicated to the batch or anything so there were still context switches.
    It just seems to me that in Java with all the nice
    threading we have access to, the server shouldnever
    be idle and if you cannot handle your volume youare
    better off adding more servers, not attempting to
    batch things.I have created applications that were intended to run
    'batch' jobs which could be spread across servers.
    Those particular processes had to finish within a
    very narrow time span as well - about two hours as I
    recall. There was an incremental as well as batch
    functionality that needed to be run for this. The
    batch functionality ran on the database. The
    incremental took the batched results and handle the
    incremental part.
    Although management was never willing to dedicate
    more than one server to the processing so I guess it
    wasn't that important to them.
    I have seen apps that claimed they were 'fast'
    because they did all of the incremental processing
    outside of the database. The design required moving,
    literally, the entire database over the network to
    other servers which would then process it.
    Processing it in the database would have taken
    orders of less time. And that was time sensitive
    data. I can't remember if that app allowed for
    multiple boxes to do the processing. I do know that
    the people working on it could never figure out the
    bottleneck (it was scaling to something like 12
    hours a day which was not acceptable.)I guess I don't see doing it on the DB as implying batching. We use triggers to drive processes in Java, COBOL, whatever.

  • ALBPM - Batch events and Load Balancing

    Hi,
    We are planning to design a BPM solution for one of our current applications. The need we have is that the BPM solution should be able to start process instances in a batch mode. We receive about 25,000 to 30,000 events in a batch file and we need to start one BPM process instance for each record. Currently we are evaluating the ALBPM, but trying to figure out a best approach to do this. Also I would like to know what will be be ther better options to configure load balance instances of BPM for this scenario. I could not find any documents from BEA to address these. Anybody tried or came across this situation? Any documents/examples that can answer or suggest options for the batch modes? Thanks in advance!

    First of all, load balancing applies at various levels.
    1) load balancing at the horizontal level is only achieved by creating a WLS cluster and deploying the BPM engine in the cluster.
    2) load balancing at the vertical level can be achieved by creating many BPM engines and deploying processes on each Engine, this will distribute instances between the engines.
    if you need to create 25k instances of the same process in a batch, there is no problem, it will queue the executions and dispatch them to the available threads.
    A good approach would be to create instances in smaller chunks, to do this you can create a "batch process" that can get the file, split it in smaller chunks and process one chunk at a time. An important thing to consider when working with so many instances is that the transactions tend to get bigger and longer, so if you have a huge chunk, you can get a transaction timeout or a DB exception because of redo logs sizes.
    Hope this helps!
    MAriano Benitez
    Join us at BEAParticipate, May 6-9 2007 | Atlanta, Georgia

  • Premiere CS5 Batch Export and Sony PMW-EX1R

    Hey Guys!
    I have multiple sequences that I need to batch export, and was wondering if there's some kind of plugin that I can use in order to do so.
    Normally, I would have to select each sequence, press Command M and place it into the render queue for Media Encoder. Is there a way I can do this by selecting a batch of sequences by highlighting them and send them into the Media Encoder's Render Queue at once, rather than individually?
    Also, we film on a Sony XDCAM PMW-EX1R and need a workflow to help us out with compression.
    We're working on MAC PRO's and so Media Encoder doesn't have a WMV compression setting for our computers, and the MOV settings give us weird bugs on our website. So to work around this we use Compressor to compress a raw file into various MOV and WMV movies and use Media Encoder to encode F4V files.
    We export from Media Encoder in h.264 with a .mp4 extension to try and replicate what our camera shoots in, but I have a feeling that that might not be the correct format to do this in because Compressor gives us this weird Frame issue where it places a single random Frame at the very beginning of our video.
    Is there a better export option for Sony XDCAM PMW-EX1R users that will give us a fairly small file size and also have great quality to match our original footage, as well as not having us have to wait long periods of time for export?
    We've tried
    Quicktime ProRes 422
    Quicktime Uncompressed
    Animation
    Jpeg Sequence
    And they all gave us extremely large file sizes (which I understood since they're lossless) and H.264 seemed to give us as big of a file size as FCP did with it's MOV files which is what we're trying to do.

    So you're saying that I basically have to pick either using a file that isn't good for delivering content, or selecting a file that's big in size and long to export?
    Well, look at it this way: if you want the highest quality output, you want to start with the highest quality source. If you're exporting from Premiere or through AME to a deliverable file--like a WMV or an H.264 MP4--you're all set, because you're accessing the original source media and unrendered effects as they exist in the Premiere Pro sequence. If you're exporting from a different app, you want the most pristine source file to create your deliverable.
    Let's say you make apple juice. If you get whole apples from the orchard and press them, you make some mighty delicious juice. However, if you're trying to cut down on shipping costs, and you have the farmer smash the apples into chunky apple sauce so that you can fit more apples in the same amount of space, you can still make juice... but it won't be quite as tasty It's sort of the same with encoding...
    An intermediate file will take up more space, because it's uncompressed (or less compressed), but it shouldn't take as long to generate, either--again, because you're not compressing it or you're compressing it less than your final deliverable. Obviously, there are dozens of codecs you could potentially use, so there's a fair bit of experimentation you need to do to determine the best combination for your purposes. There is no "one size fits all" when it comes to encoding, unfortunately; it's a path fraught with compromises.

Maybe you are looking for

  • HP Power Cord Recall Hotline Unresponsive

    http://www.hp.com/united-states/consumer/ac_cord_recall/direct/index.html I just recently found the above recall for my 9 year old printer. I do realize my printer is very old and so is the recall for it. However, the fact that this page is still on

  • Do I have to use the TC wi-fi and can/will TC support all my products?

    Looking at purchasing a TC. I currently I have an iMac, two Macbooks, a PS3, a Xbox 360, a Wii, a iPod touch and two iPhone 4 on my wireless network running a Linksys router. 1. Do I have to use the TC wi-fi for my home network? 2. Can I just use the

  • Scheduling Agreements Change History

    Hello, I was trying to track the changes of Scheduling Agreements (VA33) but could not. The "Display Changes" option in the Environment Menu and the CDHDR/CDPOS gives only provides information at the item level. The schedule line changes like change

  • Barcodes not printing

    we migrated our ebs system from linux to AIX last week. We are not able to print any barcodes in the reports. previous: 11.5.10.2, 10.2.0.2, linux5.5, western European, able to print barcodes present: 11.5.10.2, 10.2.0.2, AIX 6.1, UTF8, cannot print

  • Server not found (firefox plugin)

    Anyone tell me what I am doing wrong . . When I try and install Macromedia Flash Player i get that the installation has failed . . when I try and manually install I get - Server not found Firefox can't find the server at fpdownload.macromedia.com. *