web
You’re offline. This is a read only version of the page.
close
Skip to main content
Community site session details

Community site session details

Session Id :
Microsoft Dynamics AX (Archived)

Deleting and inserting record in same table

(0) ShareShare
ReportReport
Posted on by

Dear all,


I m creating job for deleting and inserting modified filed value in main table . for this i create a one job it was working well for deleting and inserting single field value in main table correctly but while i modified multiple records i facing issue .. (first record will deleting and inserting then for next modified record will not delete previous record in main table and inserting modified filed values in main table ).

ttsbegin;
        while select inventTable
            where inventTable.ItemId == '10369535'
            join inventTableModule
            where inventTableModule.ItemId == inventTable.ItemId && inventTableModule.ModuleType == ModuleInventPurchSales::Sales
            join infocodeTable
            where infocodeTable.BBB_Warranty_Min <= inventTableModule.Price && infocodeTable.BBB_Warranty_Max >= inventTableModule.Price
            {
                select infocodeTableSpecific where infocodeTableSpecific.infocodeId == infocodeTable.infocodeId && infocodeTableSpecific.refRelation == inventTable.ItemId;
                if(!infocodeTableSpecific)
                {

                     delete_from infocodeTableSpecific where infocodeTableSpecific.refRelation == inventTable.ItemId;
                    }
                    infocodeTableSpecific.refRelation   = inventTable.ItemId;
                    infocodeTableSpecific.infocodeId    = infocodeTable.infocodeId;
                    infocodeTableSpecific.refTableId    = RBOInfocodeRefTableIdBase::RBOInventTable;
                    infocodeTableSpecific.sequence      = 0;
                    infocodeTableSpecific.inputRequired = NoYes::Yes;
                    infocodeTableSpecific.whenRequired  = RBONoneAlwaysPositiveNegative::None;
                    infocodeTableSpecific.insert();
                  
                }
           
            ttscommit;
    }

*This post is locked for comments

I have the same question (0)
  • Suggested answer
    Jesus R. ABASCAL Profile Picture
    1,450 on at
    RE: Deleting and inserting record in same table

    Is correct this line "if(!infocodeTableSpecific)"?

    I think it should be if(infocodeTableSpecific) beacuse in the code if infocodeTableSpecific has record you can do an insert you should do an update. 

  • Martin Dráb Profile Picture
    236,320 Most Valuable Professional on at
    RE: Deleting and inserting record in same table

    What are you trying to achieve by that? Why don't use simply update the records?

    By the way, let me make your code snippet more readable, so others don't have to decipher it:

    while select inventTable
        where inventTable.ItemId == '10369535'
                
        join inventTableModule
            where inventTableModule.ItemId == inventTable.ItemId
                && inventTableModule.ModuleType == ModuleInventPurchSales::Sales
                
        join infocodeTable
            where infocodeTable.BBB_Warranty_Min <= inventTableModule.Price
                && infocodeTable.BBB_Warranty_Max >= inventTableModule.Price
        {
            select infocodeTableSpecific
                where infocodeTableSpecific.infocodeId == infocodeTable.infocodeId
                && infocodeTableSpecific.refRelation == inventTable.ItemId;
                    
            if (!infocodeTableSpecific)
            {
                delete_from infocodeTableSpecific
                    where infocodeTableSpecific.refRelation == inventTable.ItemId;
            }
                    
            infocodeTableSpecific.refRelation   = inventTable.ItemId;
            infocodeTableSpecific.infocodeId    = infocodeTable.infocodeId;
            infocodeTableSpecific.refTableId    = RBOInfocodeRefTableIdBase::RBOInventTable;
            infocodeTableSpecific.sequence      = 0;
            infocodeTableSpecific.inputRequired = NoYes::Yes;
            infocodeTableSpecific.whenRequired  = RBONoneAlwaysPositiveNegative::None;
            infocodeTableSpecific.insert();                  
        }
  • Community Member Profile Picture
    on at
    RE: Deleting and inserting record in same table

    select infocodeTableSpecific where infocodeTableSpecific.infocodeId == infocodeTable.infocodeId && infocodeTableSpecific.refRelation == inventTable.ItemId;

                   if(!infocodeTableSpecific)

                   {

    if suppose record is mismatch i want to delete that record and insert the record with modified value in main table ..

  • Community Member Profile Picture
    on at
    RE: Deleting and inserting record in same table

    Hai Martin . here i m trying to delete mismatch record in main table and insert it in modified record for deleted record in main table

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Responsible AI policies

As AI tools become more common, we’re introducing a Responsible AI Use…

Abhilash Warrier – Community Spotlight

We are honored to recognize Abhilash Warrier as our Community Spotlight honoree for…

Leaderboard > 🔒一 Microsoft Dynamics AX (Archived)

#1
Community Member Profile Picture

Community Member 4

#2
Nayyar Siddiqi Profile Picture

Nayyar Siddiqi 2

#2
NNaumenko Profile Picture

NNaumenko 2

Last 30 days Overall leaderboard

Featured topics

Product updates

Dynamics 365 release plans