Delen via


Dubbele records worden gemaakt in INTran tijdens de release van inkooporder

Dit artikel biedt een oplossing voor het probleem dat dubbele voorraadtransacties worden gemaakt tijdens de release van Inkooporder in Microsoft Dynamics SL.

Van toepassing op: Microsoft Dynamics SL
Origineel KB-nummer: 2953073

Oorzaak

Dit probleem kan optreden wanneer u op de knop Annuleren drukt tijdens het proces Inkooporder batchrelease (04.400.00) voor een batch met ontvangstbevestigingen die gebruikmaken van een Inkoop voorverkooporder of Niet-Voorraadgoederen als er een project-id is opgenomen op de detailregel.

Oplossing

Bepaal de dubbele record in de TABEL INTran en verwijder vervolgens de dubbele record. Ga hiervoor als volgt te werk:

  1. Open in Microsoft SQL Server Management Studio de juiste toepassingsdatabase. Voer vervolgens de volgende instructie uit om te bepalen of er dubbele records bestaan in de TABEL INTran.

    SELECT InvtID, TranAmt, LineRef, RecordID, * FROM INTran WHERE BatNbr = '<XXXXXX>'
    

    Opmerking

    Vervang in de instructie de <tijdelijke aanduiding XXXXXX> door het batchnummer.

  2. Bekijk de resultaten om te bepalen of er dubbele records bestaan. Als er een dubbele record bestaat, voert u de volgende instructie uit om deze te verwijderen.

    Opmerking

    De recordid te verwijderen is de HOGERE van de dubbele records.

    Voer dit eerst uit:

    Begin Transaction
    

    Voer het volgende uit:

    DELETE FROM INTran WHERE BatNbr = '<XXXXXX>' and RecordID = <YYYYYY>
    

    Opmerking

    Vervang in de instructie de <tijdelijke aanduiding XXXXXX> door het batchnummer. Vervang de <tijdelijke aanduiding JJJJ> door de waarde RecordID van de record die u wilt verwijderen.

    De verwijdering moet één rij retourneren.

    Voer dit laatste uit:

    Commit transaction
    

    Als er niet slechts één rij wordt verwijderd, voert u het volgende uit:

    Rollback transaction
    

    Als u meer dan één duplicaat vindt, moet u de recordid (uniek) voor de andere duplicaten identificeren en deze verwijderen met behulp van dezelfde procedure.