CollectionEvent UPDATE event dispatched more than necessary

Hello,
I am using Flex 4.  The objects that populate my data grid have these two fields:  tag and transcribedText.  Both of these fields are editable.
When I make a change/changes to the same record, the COLLECTIONEVENT UPDATE event is dispatched more than necessary, creating redundant PropertyChangeEvent objects.
Please refer to the following example.  I have screenshots to give more details but am unable to copy/paste or attach them.
1. I first changed the transcribedText from “add services” to “add services TODAY”.
2. I then changed the tag from “OrderGeneral” to “OrderInternet”.
3. I finally clicked outside of the affected line.
The COLLECTIONEVENT UPDATE event is dispatched THREE times.
1. In the first dispatch, there are two PropertyChangeEvent objects, and the second one is a repeat of the first one (transcribedText change) but with oldValue and newValue both set to null.
2. In the second dispatch, there is only one PropertyChangeEvent object, and it correctly captures the tag change.
3. In the third dispatch, there is only one PropertyChangeEvent object, and it is a repeat of the previous tag change but with oldValue and newValue both set to null.
Why is this happening?
Thanks for your help!
Bonnie

COLLECTION_CHANGE events are tied to the data provider itself, not to the data grid though.
One interesting observation is that the REMOVE event is dispatched only one time.
When I was using the itemEditEnd event tied to the data grid, I also witnessed that this event was dispatched two times when only one change was made.
Any other thoughts?
Bonnie

Similar Messages

  • Splitting an event takes more than 3 min

    Hi,
    I have about 8.000 photos in my library and 2.500 photos in a single event. Now I want to extract a set of pictures from this event and move it in a new event. Is there a faster way doing this than splitting the event before and after the set of pictures? This created 3 events and then I have to move the 3rd event back into the first, the 2nd event is what I want to keep.
    BTW, with over 8.000 pictures in the library, is it normal that splitting an event takes more than 3 minutes?

    Danielle
    Flag the pics you want to move to the new Event and the go Events -> Create Event from Flagged Photos. That will probably be faster.
    BTW, with over 8.000 pictures in the library, is it normal that splitting an event takes more than 3 minutes?
    I wouldn't have thought so, but it might take a while with an Event that has more that 2,500 pics in it. Remember, Events in the iPhoto Window correspond exactly with the Folders in the Originals Folder in the iPhoto Library package file (Right click on it in the Pictures Folder -> Show Package Contents). So splitting an event literally means creating a folder and moving files to it and so on.
    Regards
    TD

  • TS1702 why can't i update the app more than 50mb from itune but can throught wifi?

    I tried to update Apps more than 50mb through itune, but found the Apps which are needed to be update are mark "Downloaded" in iTune store.  Of course if the Apps mark "Downloaded" are not able to do anything with it.  On the other hand, I can simply use wifi to update the Apps, more than 50mb, throught my iphone instead of iTune.  Is there any problem with iTune or something wrong with my phone?

    In the App section of your itunes library ( NOT the sync pages) there is a button at the bottom which says Check for updates

  • QuickTime DOM Events called more than once?

    I am in the process of writing code in JavaScript that will track the interaction on a embedded QuickTime video.
    function ew_addImage(v) {
    trackImg=new Image(1,1);
    trackImg.src=v;
    function ew_pauseTrk() {
    var imgStr='http://www.sldkfjsldfjk.com/200125/EWTRACKNEW_VINT?ewadid=751801&ewbust='ewbust'&eid=1078554&file=$VIDEO$&bw=56&vlen=3:00&vint=PAUSED';
    ew_addImage(imgStr);
    if (document.addEventListener)
    document.getElementById("mov1").addEventListener("qt_pause", ew_pauseTrk, false);
    Everything works correctly. I am able to see the image being called when I am looking at Wireshark. The problem is when I click pause more than once.. It seems like the QuickTime DOM Events can only be called once.. Is that true?
    Thanks

    -(void) flipToEditView {
    [self populateTheList]; // populate an array
    EditViewController *anEditVC = [[EditViewController alloc] initWithNibName:@"EditView" bundle:nil];
    [self setEditVC:anEditVC];
    [viewController.view removeFromSuperview];
    [self.window addSubview:[editVC view]];
    [anEditVC release]; }
    }<---- is this } matched elsewhere?

  • Problem in CRM_ORDER_MAINTAIN for updating qty in more than 1 line item .

    Hi abapers,
    I am using BAPI CRM_ORDER_MAINTAIN to update quantity. Its updating the quantity properly if there is single line item for a transaction .If more than 1 line item is there then its throwing an exception* "Document is being distributed - changes are not possible"*.
    Scenario:
    I have a itab  which is having 2 line items for a transaction. i run a loop pass the pass the required parameters in CRM_ORDER_MAINTAIN ,do CRM_ORDER_SAVE , BAPI_TRANSACTION_COMMIT for the 1st line item. When i run the 2nd loop, in  CRM_ORDER_MAINTAIN it gives an exception saying NO_CHANGE_ALLOWED for the same transactions 2nd line item. leaving the quantity unchanged for both the line items. What may be the problem?
    Note: We cannot say how many line items are there for an transaction. so no chance of grouping all items at a time and saving at a time.
    Regards,
    Navin

    Hi Navin,
    Why its not possible to use CRM_ORDER_SAVE only once. I think its possible. Call CRM_ORDER_MAINTAIN in loop for all the line item in transaction and after that call CRM_ORDER_SAVE once. Pls follow the below sample code.
    loop at it_item.
    call CRM_ORDER_MAINTAIN. (Here append data for all the line items and miantin the transaction).
    emdloop.
    After endloop call CRM_ORDER_SAVE. Also you can add some wait after CRM_ORDER_SAVE, In order to avoid locking issue.
    PLs let me know where you are trying to use CRM_ORDER_MAINATIAN ? In any BADI or Z program ?
    Regards,
    Amol.

  • Why can't events be more than 3 hours

    I want to be able to set an event to longer than 3 hours but I don't see anywhere in settings where I can change that.

    Welcome to the Apple community.
    I don't really understand what you are saying, you can set an appointment to any length you want from the controls, but you can also drag the appointment to any length too.

  • One event occuring more than the other

    For my exam on Java (i'm almost there), I got a simulation with Foxes & Rabbits. I've added Hares to this. Foxes eat the rabbits and hares, but the rabbits and hares breed faster again. It's going fine so far, the only thing that I need to implement is that a Fox eats rabbits more often than hares, and I have no clue on how to implement it. What I've thought of is to make an integer for both the rabbits and the hares, with a sort of attractiveness-rating, but then I got stuck on how to implement it.
    Anyway, here are the codes:
    import java.util.List;
    import java.util.Random;
    public class Rabbit extends PreyAnimal
        // Characteristics shared by all rabbits (static fields).
        // The age at which a rabbit can start to breed.
        // private static final int BREEDING_AGE = 5;
        // The age to which a rabbit can live.
        // private static final int MAX_AGE = 50;
        // The likelihood of a rabbit breeding.
        // private static final double BREEDING_PROBABILITY = 0.15;
        // The maximum number of births.
        private static final int MAX_LITTER_SIZE = 5;
        // A shared random number generator to control breeding.
         private static final Random rand = new Random();
         public static final int PREFERENCE = 6;
        // Individual characteristics (instance fields).
         * Create a new rabbit. A rabbit may be created with age
         * zero (a new born) or with a random age.
         * @param randomAge If true, the rabbit will have a random age.
        public Rabbit(boolean randomAge)
            super.incrementAge();
            if(randomAge) {
                setAge(rand.nextInt(MAX_AGE));
         * This is what the rabbit does most of the time - it runs
         * around. Sometimes it will breed or die of old age.
         * @param currentField The field currently occupied.
         * @param updatedField The field to transfer to.
         * @param newAnimals A list to add newly born rabbits to.
        public void act(Field currentField, Field updatedField, List newAnimals)
            super.incrementAge();
            if(isAlive()) {
                int births = breed();
                for(int b = 0; b < births; b++) {
                    Rabbit newRabbit = new Rabbit(false);
                    newAnimals.add(newRabbit);
                    newRabbit.setLocation(
                            updatedField.randomAdjacentLocation(getLocation()));
                    updatedField.place(newRabbit);
                Location newLocation = updatedField.freeAdjacentLocation(getLocation());
                // Only transfer to the updated field if there was a free location
                if(newLocation != null) {
                    setLocation(newLocation);
                    updatedField.place(this);
                else {
                    // can neither move nor stay - overcrowding - all locations taken
                    setDead();
         * Generate a number representing the number of births,
         * if it can breed.
         * @return The number of births (may be zero).
        private int breed()
            int births = 0;
            if(canBreed() && rand.nextDouble() <= BREEDING_PROBABILITY) {
                births = rand.nextInt(MAX_LITTER_SIZE) + 1;
            return births;
        public int getPreference()
            return PREFERENCE;
         * @return A string representation of the rabbit.
        public String toString()
            return "Rabbit, age " + getAge();
    }The class Hare is nearly the same ofcourse.
    Here's the fox, on where I got to implement the preference:
    import java.util.List;
    import java.util.Iterator;
    import java.util.Random;
    public class Fox extends Animal
        // Characteristics shared by all foxes (static fields).
        // The age at which a fox can start to breed.
        private static final int BREEDING_AGE = 10;
        // The age to which a fox can live.
        private static final int MAX_AGE = 150;
        // The likelihood of a fox breeding.
        private static final double BREEDING_PROBABILITY = 0.09;
        // The maximum number of births.
        private static final int MAX_LITTER_SIZE = 3;
        // The food value of a single rabbit. In effect, this is the
        // number of steps a fox can go before it has to eat again.
        private static final int RABBIT_FOOD_VALUE = 6;
        private static final int HARE_FOOD_VALUE = 4;
        // A shared random number generator to control breeding.
        private static final Random rand = new Random();
        // Individual characteristics (instance fields).
        // The fox's food level, which is increased by eating rabbits.
        private int foodLevel;
         * Create a fox. A fox can be created as a new born (age zero
         * and not hungry) or with random age.
         * @param randomAge If true, the fox will have random age and hunger level.
        public Fox(boolean randomAge)
            super();
            if(randomAge) {
                setAge(rand.nextInt(MAX_AGE));
                foodLevel = rand.nextInt(RABBIT_FOOD_VALUE);
            else {
                // leave age at 0
                foodLevel = RABBIT_FOOD_VALUE;   
         * This is what the fox does most of the time: it hunts for
         * rabbits. In the process, it might breed, die of hunger,
         * or die of old age.
         * @param currentField The field currently occupied.
         * @param updatedField The field to transfer to.
         * @param newAnimals A list to add newly born foxes to.
        public void act(Field currentField, Field updatedField, List newAnimals)
            incrementAge();
            incrementHunger();
            if(isAlive()) {
                // New foxes are born into adjacent locations.
                int births = breed();
                for(int b = 0; b < births; b++) {
                    Fox newFox = new Fox(false);
                    newAnimals.add(newFox);
                    newFox.setLocation(
                            updatedField.randomAdjacentLocation(getLocation()));
                    updatedField.place(newFox);
                // Move towards the source of food if found.
                Location newLocation = findFood(currentField, getLocation());
                if(newLocation == null) {  // no food found - move randomly
                    newLocation = updatedField.freeAdjacentLocation(getLocation());
                if(newLocation != null) {
                    setLocation(newLocation);
                    updatedField.place(this);  // sets location
                else {
                    // can neither move nor stay - overcrowding - all locations taken
                    setDead();
         * Increase the age. This could result in the fox's death.
        private void incrementAge()
            setAge(getAge() + 1);
            if(getAge() > MAX_AGE) {
                setDead();
         * Make this fox more hungry. This could result in the fox's death.
        private void incrementHunger()
            foodLevel--;
            if(foodLevel <= 0) {
                setDead();
         * Tell the fox to look for rabbits adjacent to its current location.
         * @param field The field in which it must look.
         * @param location Where in the field it is located.
         * @return Where food was found, or null if it wasn't.
        private Location findFood(Field field, Location location)
            Iterator adjacentLocations =
                              field.adjacentLocations(location);
            while(adjacentLocations.hasNext()) {
                Location where = (Location) adjacentLocations.next();
                Object animal = field.getObjectAt(where);
                if(animal instanceof Rabbit) {
                    Rabbit rabbit = (Rabbit) animal;
                    if(rabbit.isAlive()) {
                        rabbit.setDead();
                        foodLevel = RABBIT_FOOD_VALUE;
                        return where;
                else if(animal instanceof Hare) {
                Hare hare = (Hare) animal;
                if(hare.isAlive()) {
                    hare.setDead();
                    foodLevel = HARE_FOOD_VALUE;
                    return where;
        return null;
         * Generate a number representing the number of births,
         * if it can breed.
         * @return The number of births (may be zero).
        private int breed()
            int births = 0;
            if(canBreed() && rand.nextDouble() <= BREEDING_PROBABILITY) {
                births = rand.nextInt(MAX_LITTER_SIZE) + 1;
            return births;
         * @return A string representation of the fox.
        public String toString()
            return "Fox, age " + getAge();
         * A fox can breed if it has reached the breeding age.
        private boolean canBreed()
            return getAge() >= BREEDING_AGE;
    }Is there anybody out there with a clue on how to do it? Or maybe with another solution than adding an integer? Would be much appreciated :)
    Btw, the full code with all classes is availble @ http://members.home.nl/firehawk/S200.rar

    dubwai offers a simple solution for you...this would be implemented in the findFood() method, i believe.
    i would offer a suggest. implements to an interface...this will get rid of the instanceof checking.
    example
    public interface Animal {  // common to all animal (in your application)
        public void setDead();
        public boolean isAlive();
    public abstract class Prey implements Animal{  // common to all animal that are a prey
        private boolean alive = true;
        private int foodValue = 0;
        public void setDead(){  alive = false; }  // probably better to name it die() instead of setDead()
        public boolean isAlive(){ return alive; }
        public abstract int getFoodLevel();
    public class Rabbit extends Prey {
        private static final RABBIT_FOOD_LEVEL = 3;
        public int getFoodLevel(){ return RABBIT_FOD_LEVEL; }
    private Location findFood(Field field, Location location){
        Iterator adjacentLocations = field.adjacentLocations(location);
        while(adjacentLocations.hasNext()) {
            Location where = (Location) adjacentLocations.next();
            Animal animal = (Animal) field.getObjectAt(where);
            if (animal.isAlive()){
                animal.setDead();
                foodLevel = animal.getFoodLevel();
                return where;
            return false;
    }i would probably makes the Prey an interface instead of an abstract class.

  • Events - adding more than one person

    Hi there guys, I'm sure there's a simple answer to this:
    I've created an event.
    I've got a limit of 20 people.
    I have a web form associated with that event.
    On the form - how can I allow one person to book e.g. 2 or 3 people into that event? I don't need specifics like emails etc for the 2nd & third person. Just the "numbers" to be linked to the event.
    So if I've got 20 people able to attend, and one person wants to book themselves & 2 others, the event will be updated with "17 places left".
    Any info most appreciated...
    Cheers
    Dave

    You need to ajax submit multiple times to account for the extra submissions Dave.

  • CFL Event Fires more than ONE Time

    Hi,
    Does anybody in here experienced that when an add-on form is created with a  CFL in the matrix, and you closed the form, and then opens the same form again ( by clicking a menu and without exiting the application), the CFL event fires equal to the times you closed the form?
    for example i closed the form 3 times, and then when i debug the application, it fires the CFL event also 3 times..
    It seems its some kind of creepy bug..
    Thanks...
    BTW im using SAP B1 2007 A (8.00.175) SP:00 PL:30

    Hello Robert,
    Does it work fine in the previous or latest version? if yes, there may be a bug in the patch, you may need to update to latest version.
    How ever these is a workaround:
    Have a CFL counter (lCounter) to count the times of CFL event fired at the beginning of Event handler.
    if (lCounter > 3)
         Exit Sub
    Kind Regards
    -Yatsea

  • 2.0.2 Update - Calls dropping more than before

    Ever since I got the 2.0.2 update for my my 3G iPhone, I have had more calls get dropped and a worse signal (more static). It seems like my phone keeps switching between 3G and the Edge Network every couple hundred yards when moving or every 5 minutes when stationary. Is anyone else having this problem? Is there a fix out for this?

    2.02 is a no go then.
    Good thing I click on the link before I went to Next.
    But where are the release notes? (you know - like specific fixes)
    Does it changes/shortens the timeout sessions on the 3G network?
    Will it restrict/change certain e-mail protocols?
    Does it still brick jailbreakers?
    Must've reduced the radio watts. To satisfy battery complaints. Turn off the dang Bluetooth! The 2.4Ghz has been a greater improvement to my iTouch battery consumption.
    Could be a Ping or Echo overflow?(ok i'm just trowing stuff on that one)

  • Update Trigger Assistance - Update Same Row More than Once?

    Good morning,
    I'm new to Triggers and am not understanding why this is not working.  I've tried the web and none of the articles seem to answer my question.  What I'm trying to do is clean a string and standardize some data the users input into a 1000 character
    varchar field.  I have a source table which has a trigger on it that inserts a limited number of columns that we'll use for reporting purposes.  After the row has been inserted into the table (referred to as "destination" in the code block),
    I'm looking to update the comments string, capitalizing the first character of the string, standardizing spacing after a colon, removing hyphens at the beginning of the string.  The source and destination tables both have the comments field as a varchar
    1000, not null data type with a key id between the source and destination tables.  At another segment of our system, there were errors reporting nulls and when this was removed, everything cleared up.  I can do a series of replace statements when
    the data is required in reports but would rather have it clean in the destination table.  The code is below:
    CREATE TRIGGER [dbo].[destination_Update_trg]
    ON [dbo].[destination]
    AFTER UPDATE
    AS
    BEGIN
    SET NOCOUNT ON;
    IF EXISTS (SELECT *
    FROM destination C
    JOIN INSERTED I
    ON I.PrimaryKeyID = C.PrimaryKey
    WHERE I.Comments IS NOT NULL AND I.Comments <> '')
    BEGIN
    UPDATE T
    SET T.Comments =
    CASE
    WHEN T.Comments <> '' AND LEFT(CAST(T.Comments AS VARCHAR (1000)), 2) LIKE '- %'
    THEN SUBSTRING(T.Comments, 3, 1000)
    END
    FROM destination T
    JOIN INSERTED I
    ON T.primarykey = I.primarykey
    WHERE T.primarykey = I.primarykey
    UPDATE T
    SET T.Comments = UPPER(LEFT(CAST(T.Comments AS VARCHAR (1000)), 1)) + SUBSTRING(CAST(T.Comments AS VARCHAR (1000)), 2, 1000)
    FROM destination T
    JOIN INSERTED I
    ON T.primarykey = I.primarykey
    WHERE T.primarykey = I.primarykey
    UPDATE T
    SET T.Comments = REPLACE(SUBSTRING(T.Comments, 1, 1000), ': ', ': ')-- '[A-9]: [A-9]'
    FROM destination T
    JOIN INSERTED I
    ON T.primarykey = I.primarykey
    WHERE T.primarykey = I.primarykey
    AND SUBSTRING(T.Comments, 1, 1000) LIKE '%[A-Z]%: [A-Z]%'
    END
    RETURN
    END;
    GO
    Perhaps there's a better way to accomplish the task. I appreciate your review and assistance. Thank you.

    First, the trigger only fires when you do an UPDATE.  I'm not sure from your description whether or not you are expecting this trigger to fire when you do an insert on dbo.destination.  If you want it to fire on INSERTs, then you need to specify
    FOR INSERT (or FOR INSERT, UPDATE if you want it to fire on both inserts and updates).
    More importantly, the first update in your trigger does
    SET T.Comments =
    CASE
    WHEN T.Comments <> '' AND LEFT(CAST(T.Comments AS VARCHAR (1000)), 2) LIKE '- %' THEN SUBSTRING(T.Comments, 3, 1000)
    END
    When you do a CASE and you don't have an ELSE clause, there is an implicit ELSE NULL clause added.  So your update is equivalent to
    SET T.Comments =
    CASE
    WHEN T.Comments <> '' AND LEFT(CAST(T.Comments AS VARCHAR (1000)), 2) LIKE '- %' THEN SUBSTRING(T.Comments, 3, 1000)
    ELSE NULL
    END
    So your very first update sets the Comments column to NULL in every row that was updated where the Comments column is not like '- %'.  You want to change the case statement to be
    SET T.Comments =
    CASE
    WHEN T.Comments <> '' AND LEFT(CAST(T.Comments AS VARCHAR (1000)), 2) LIKE '- %' THEN SUBSTRING(T.Comments, 3, 1000)
    ELSE T.Comments
    END
    (Or you can put the test in the where clause so that you only update those rows where the Comments column is like '- %'.  That would look like
    UPDATE T
    SET T.Comments = SUBSTRING(T.Comments, 3, 1000)
    END
    FROM destination T
    JOIN INSERTED I
    ON T.primarykey = I.primarykey
    WHERE LEFT(CAST(T.Comments AS VARCHAR (1000)), 2) LIKE '- %'
    (Note that you do not need to include the T.Comments <> '' because if T.Comments is Like '- %', then it cannot be the empty string and you do not need to include WHERE T.primarykey = I.primarykey because you know that is true since you did an inner
    join on T.primarykey = I.primarykey.
    Tom

  • Can I publish an event to more than one shared calendar in iCal?

    I have shared calendars (called "home") with my wife & kids and (called "Work") with my secretary at work so that my family can add home events and my secretary can add work things .
    I've done this as I don't want my secretary seeing when my kids have an appointment to see the doctor or my kids to see when I have appointments with clients at work etc.
    However some things (like when I've booked leave from work) need to be on both calendars.
    QUESTION: Can I publish one event (using OS X Yosemite or iOS8.2) to multiple calendars  ("home" & "work") in iCal?

    i generally hate toolbars because it makes the browser look cluttered and hogs memory. but u should ask an expert on this if it possible its not too easy, addons will probably help you, for example if you have the stumbleupon toolbar, there are addons that will create an extra button for you to put anywhare for quick access. this solution probably may not work with other less known addons.

  • Informatica Night Update (Delta) Process - More than one Delta Source

    We are setup to run a nightly process to update our DW with changes that took place that day in our Siebel OLTP environment. We refer to this as our "Delta Process" since it only updates rows that were chagned in the OLTP or adds new rows that were added to the OLTP. Here is our design:
    * In our Siebel OLTP we have a View (V table) created that contains a view of only the records that have been changed since the last "Delta Process". This way we can identify only those rows that need to be updated. So in these examles when you see a table that is prefixed as "S_" it references the entire table and a table prefixed as "V_" references on only the changes to the underlying "S_" table.
    Ex 1: Order Item table (S_ORDER_ITEM) joins to Account table (S_ORG_EXT). In the Informtica mapping SQ_JOINER we have a query to SELECT statements that with the results concatentated with a UNION statement. The first SELECT statement selects all rows from the V_ORDER_ITEM joined to the S_ORG_EXT so that all delta rows on the order item view are updated with the corresponding data from the account table (S_ORG_EXT). The second SELECT statement selects all rows from the S_ORG_ITEM joined to the V_ORG_EXT so that all of the order item records that contained account information that changed (per the view) are updated. The result is an updated Order Item DW table that contains all updates made to the Order Item and all any associated Accounts information that is stored on the Order Item.
    SELECT A.*, B.* FROM V_ORDER_ITEM A, S_ORG_EXT B WHERE A.ORG_ID = B.ROW_ID
    UNION
    SELECT A.*, B.* FROM S_ORDER_ITEM A, V_ORG_EXT B WHERE A.ORG_ID = B.ROW_ID
    The issues:_
    This works fine when you have two tables joined together that contain deltas and you need only on UNION statement. However, the issue is when I have 14 tables joined to S_ORDER_ITEM that contain deltas. This cannot be accomlised (that I can see) with one UNION statement but you would need a UNION statement for each delta table.
    Ex 2: This example contains just 3 tables. Order Item table (S_ORDER_ITEM) joins to Account table (S_ORG_EXT) and joins to Product table (S_PROD_INT). In this example you will need to have one UNION for each delta table. If you combine delta tables in the same union you will ultimately end up missing data in the final result. This is because the delta tables will only contain the rows that have changed and if one delta table contains a change and needs to pull data from another delta table that did not contain a corresponding change it will not pull the information.
    SELECT A.*, B.*, C.* FROM V_ORDER_ITEM A, S_ORG_EXT B, S_PROD_INT C WHERE A.ORG_ID = B.ROW_ID AND A.PROD_ID = C.ROW_ID
    UNION
    SELECT A.*, B.*, C.* FROM S_ORDER_ITEM A, V_ORG_EXT B, S_PROD_INT C WHERE A.ORG_ID = B.ROW_ID AND A.PROD_ID = C.ROW_ID
    UNION
    SELECT A.*, B.*, C.* FROM S_ORDER_ITEM A, S_ORG_EXT B, V_PROD_INT C WHERE A.ORG_ID = B.ROW_ID AND A.PROD_ID = C.ROW_ID
    The question:_
    1. Is my understanding of how the delta process works correct?
    2. Is my understanding that I will need a UNION for each delta table correct?
    3. Is there another way to perform the delta process?
    My issues are based upon the fact that I join roughly 15 delta tables and select about 100 columns to denormalize the data in the DW. If this is the only option that I have then this will generate an very large and complex query which would be very difficult to manage and udpate.
    Thanks...

    Hi,
    Going thru your post, I find that you have the delta view (V_) and the main table (S_) as drivers, i.e you have two driver tables and hence you make outer joins (w.r.t each other) and make a union to get the complete set of data.
    Can you please tell me why both are considered as drivers? Is there a possiability that the V_ view may not have some data but the corresponding S_table might have an update?
    Regards,
    Bharadwaj Hari

  • Triggering an event with more than one item.

    Hello there,
    I've written an addon, part of which populates a UDF on the Validate event of the ItemCode Cell of the matrix on the Sales Order form.
    Although this works fine when the user inputs a single item, if the user selects multiple items from the 'List of Items' list, as each item is added to the Sales Order, the addon's event is only called for the first item added, even though I'm sure all of the items must be validated as they are put into the matrix - does anyone know why it wouldn't run the event for each indivdual item ?
    Is there a way I can capture the data as it's moved from the list to the matrix ?.. or something..?

    Hello,
    You can use the et_CHOOSE_FROM_LIST event in any case!
    Even when the user just enters the ItemCode it is getting fired..
    Check-out SDK Sample "C:\Program Files\SAP\SAP Business One SDK\Samples\COM UI\VB.NET\17.ChooseFromList"
    Regards,
    Frank

  • Updating table with more than 50 million records

    Hi Team,
    Updating three columns in a table which has 60 millions of records is taking a lot of time. How to improve the performance of the query. The table has to be updated based on the values from different database tables.
    Thanks,
    Eshwar.
    Please don't forget to Marked as Answer if my post solved your problem and use Vote As Helpful if a post was useful. It will helpful to other users.

    Split them into small batches
    when you are using multiple tables, have them with JOINs
    have the corresponding indexes for joining columns
    disable triggers if any (if possible and doesnt affect your logic - wud be least favourable step ..)
    also these shud help:
    http://blogs.msdn.com/b/repltalk/archive/2011/10/10/lessons-learned-updating-100-millions-rows.aspx
    http://www.sqlservergeeks.com/blogs/AhmadOsama/personal/450/sql-server-optimizing-update-queries-for-large-data-volumes
    http://stackoverflow.com/questions/7344984/update-large-number-of-rows-sql-server-2005
    Thanks,
    Jay
    <If the post was helpful mark as 'Helpful' and if the post answered your query, mark as 'Answered'>

Maybe you are looking for

  • Web Dispatcher Not forwading XML document to SAP XI

    Hi Everyone, We have a web dispatcher that is accepting an HTTP Post over SSL and forwarding this connection to our SAP XI system. Our client post to the box and we see the ssl information in the log and then a string of information about connecting

  • Sychronous BPM

    My scenerio: R/3>PI>ExternalPartner via HTTPS URL. IDoc(Orders05) from R/3 will come  in Sychronous mode(Best Effort) and in PI I'm converting into xCBL format and sending to parnter. I'm  getting the functional ack xml file back immediately in the s

  • 6220 classic - camera flash not working

    Hi, I have a problem with the 6220 classic's camera flash. When I'm taking pictures, sometimes it does not work at all - no matter if I set the flash mode to "always on" or "red eye". What bugs me is the fact that the flash sometimes decides to work,

  • Store location of raw files.

    If I import a raw file, edit the version, export the version then delete the version, what has happened to my original master raw file, where has aperture stored it? any advice welcome, thanks. Mike

  • Data staging in APO BW

    We are now running SCM 4.1 which has BW 3.5 and are currently using a external BW system for data staging before pulling it over into APO. Are there any consequences to doing the data staging on the APO BW side itself without using an external BW sys