Bonjour,
I AM ayant l'ennui s'insérer dans une table using un déclenchement. De chose étrange est qu'elle était travail en retard la semaine dernière. La seule chose que je me suis ajoutée était un index à la table sur InvoiceNumber et LineItemNo_Int.
If je désactive le déclenchement, les données est inséré. Quand je permets le déclenchement, j'obtiens une erreur :
Msg 8114, niveau 16, état 5, trig_InvoiceLinesInsertCheck, ligne 27 Error de procédé convertissant le type de données varchar en numeric.
Table Def : TABLE du CREATE [dbo]. [InvoiceLines] (IDENTITÉ de [InvoiceLinesID] [international] (1.1) NON NULS, [InvoiceNumber] [varchar] (100) ASSEMBLER LA NULLE de SQL_Latin1_General_CP1_CI_AS, le [CustomerNo] [varchar] (100) ASSEMBLER LA NULLE de SQL_Latin1_General_CP1_CI_AS, le [LineItemNo] [varchar] (100) ASSEMBLER LA NULLE de SQL_Latin1_General_CP1_CI_AS, le [LineItemNo_Int] [international] la NULLE, le [PartNo] [varchar] (100) ASSEMBLER LA NULLE de SQL_Latin1_General_CP1_CI_AS, le [CustomerPartNo] [varchar] (100) ASSEMBLER LA NULLE de SQL_Latin1_General_CP1_CI_AS, le [quantité] [varchar] (100) ASSEMBLER LA NULLE de SQL_Latin1_General_CP1_CI_AS, le [UnitOfMeasure] [varchar] (100) ASSEMBLER LA NULLE de SQL_Latin1_General_CP1_CI_AS, le [UnitPrice] [varchar] (100) ASSEMBLER LA NULLE de SQL_Latin1_General_CP1_CI_AS, le [escompte] [varchar] (100) ASSEMBLER LA NULLE de SQL_Latin1_General_CP1_CI_AS, le [VAT_Tax] [varchar] (100) ASSEMBLER LA NULLE de SQL_Latin1_General_CP1_CI_AS, le [PONumber] [varchar] (100) ASSEMBLER LA NULLE de SQL_Latin1_General_CP1_CI_AS, le [PODate] [varchar] (100) ASSEMBLER LA NULLE de SQL_Latin1_General_CP1_CI_AS, le [OrderNumber] [varchar] (100) ASSEMBLER LA NULLE de SQL_Latin1_General_CP1_CI_AS, le [PackingSlip] [varchar] (100) ASSEMBLENT LA NULLE de SQL_Latin1_General_CP1_CI_AS, le [PlantNumber] [varchar] (100) ASSEMBLER LA NULLE de SQL_Latin1_General_CP1_CI_AS, le [DepartmentNumber] [varchar] (100) ASSEMBLER LA NULLE de SQL_Latin1_General_CP1_CI_AS, le [AccountNumber] [varchar] (100) ASSEMBLER LA NULLE de SQL_Latin1_General_CP1_CI_AS, le [CompanyWarehouse] [varchar] (100) ASSEMBLER LA NULLE de SQL_Latin1_General_CP1_CI_AS, le [SalesOrderCarrier] [varchar] (100) ASSEMBLER LA NULLE de SQL_Latin1_General_CP1_CI_AS, le [LineItemPONumber] [varchar] (100) ASSEMBLER LA NULLE de SQL_Latin1_General_CP1_CI_AS, le [LineItemReleaseNumber] [varchar] (100) ASSEMBLER LA NULLE de SQL_Latin1_General_CP1_CI_AS, le [MKPositionNumber] [varchar] (100) ASSEMBLER LA NULLE de SQL_Latin1_General_CP1_CI_AS, le [TrackingNumber] [varchar] (100) ASSEMBLER LA NULLE de SQL_Latin1_General_CP1_CI_AS, le [InvoiceFormat] [varchar] (100) ASSEMBLER SQL_Latin1_General_CP1_CI_AS NULL ) SUR le
Trigger Def : DÉCLENCHEMENT du
alter [dbo]. [trig_InvoiceLinesInsertCheck] DESSUS [dbo]. [Le d'InvoiceLines] AU LIEU de l'on de nocount du AS BEGIN d'INSERTION DÉCLARENT de @InvoiceNumber (les 100) déclarent de @OrderNumber (les 100) déclarent que de @PositionNumber (les 100) DÉCLARENT @InvoiceFormat réglés varchar du de @InvoiceFormat (les 100) = (InvoiceFormat choisi d'INSÉRER) le si @InvoiceFormat = 'nouveau @InvoiceNumber RÉGLÉ du Br/> BEGIN de Format'< = (InvoiceNumber choisi d'INSÉRER) @OrderNumber réglé du = (OrderNumber choisi d'INSÉRER) @PositionNumber réglé du = (LineItemNo choisi d'INSÉRER) le
SI EXISTE (choisir * à partir d'InvoiceLines où InvoiceNumber = @InvoiceNumber et OrderNumber = @OrderNumber et LineItemNo = suppression du BEGIN de @PositionNumber) d'InvoiceLines où InvoiceNumber = @InvoiceNumber et OrderNumber = @OrderNumber et LineItemNo = insertion du @PositionNumber END END dans le d'InvoiceLines (InvoiceNumber, CustomerNo, LineItemNo, LineItemNo_Int, PartNo, CustomerPartNo, Quantity, UnitOfMeasure, UnitPrice, escompte, VAT_Tax, PONumber, PODate, OrderNumber, PackingSlip, PlantNumber, DepartmentNumber, AccountNumber, CompanyWarehouse, SalesOrderCarrier, LineItemPONumber, LineItemReleaseNumber, MKPositionNumber, TrackingNumber, InvoiceFormat) choisissent le InvoiceNumber, CustomerNo, LineItemNo, LineItemNo_Int, PartNo, CustomerPartNo, Quantity, UnitOfMeasure, UnitPrice, Discount, VAT_Tax, PONumber, PODate, OrderNumber, PackingSlip, PlantNumber, DepartmentNumber, AccountNumber, CompanyWarehouse, SalesOrderCarrier, LineItemPONumber, LineItemReleaseNumber, MKPositionNumber, TrackingNumber, InvoiceFormat de question INSÉRÉE du END
Insert :
insert dans le values ( « 31775ABC » d'InvoiceLines (quantité de InvoiceNumber, de CustomerNo, de LineItemNo, de LineItemNo_Int, de PartNo, de CustomerPartNo, de , escompte de UnitOfMeasure, de UnitPrice, de , VAT_Tax, PONumber, PODate, OrderNumber, PackingSlip, PlantNumber, DepartmentNumber, AccountNumber, CompanyWarehouse, SalesOrderCarrier, LineItemPONumber, LineItemReleaseNumber, MKPositionNumber, TrackingNumber, InvoiceFormat ), « 013608 », « 20 », 20, « TESTPART », « TESTPART2 », « 2 », '', « 26.70 », '', '', « 166TEST », '', « 31TEST », '', '', '', '', '', « Br/>) de Format'< du de « TESTTRACKINGNUM » d'UPAC », de '', de '', de de '', nouveau '
class= de
|