Problemas con disparadores

<span style="font-family: 'Times New Roman'; font-size: 16px;">
<div style="color: #000000; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: #ffffff; background-position: initial initial; margin: 8px;">Buen día Experto,
Debo hacer un disparador tipo Insert, de una base de dato db1 a otra base de datos db2, el problema viene cuando genero el select es desde varias tablas, como puedo hacer esto
te adjunto el query que estoy haciendo
CREATE TRIGGER JobBossLand
on training.dbo.invoice_header
AFTER INSERT 
AS 
insert into   P01.dbo.FACENCABEZADOFACTURAVENTA(FACPrefijoFacturaVentaEncabezadoFacturaVenta, FACNumeroFacturaVentaEncabezadoFacturaVenta, FACIdDocumentoEncabezadoFacturaVenta,FACCodigoTipoDocumentoEncabezadoFacturaVenta, FACIdentificadorUnoVendedorEncabezadoFacturaVenta,FACSucursalVendedorEncabezadoFacturaVenta, FACIdentificadorDosVendedorEncabezadoFacturaVenta, FACFechaFacturaEncabezadoFacturaVenta, FACIdentificadorDosClienteEncabezadoFacturaVenta, FACIdentificadorUnoClienteEncabezadoFacturaVenta, FACSucursalClienteEncabezadoFacturaVenta, FACNumeroDocto1EncabezadoFacturaVenta, FACNumeroDocto2EncabezadoFacturaVenta, FACPlazoEncabezadoFacturaVenta, FACCodigoMonedaEncabezadoFacturaVenta, FACTasaCambioEncabezadoFacturaVenta, FACEstadoEncabezadoFacturaVenta, FACPorcDescComercialUnoEncabezadoFacturaVenta, FACPorcDescComercialDosEncabezadoFacturaVenta, FACPorcDescComercialTresEncabezadoFacturaVenta, FACPorcDescFinancieroUnoEncabezadoFacturaVenta, FACPorcDescFinancieroDosEncabezadoFacturaVenta, FACPorcDescFinancieroTresEncabezadoFacturaVenta, FACDiasDescFinancieroUnoEncabezadoFacturaVenta, FACDiasDescFinancieroDosEncabezadoFacturaVenta, FACDiasDescFinancieroTresEncabezadoFacturaVenta, FACNroCuotasEncabezadoFacturaVenta, FACPeriodicidadEncabezadoFacturaVenta, FACPorcentajeFinanciacionEncabezadoFacturaVenta, FACFormulaEncabezadoFacturaVenta, FACValorInicialEncabezadoFacturaVenta, FACValorNetoEncabezadoFacturaVenta, FACTransportadorEncabezadoFacturaVenta, FACPorcRetencionIvaEncabezadoFacturaVenta, FACPorcRetencionIcaEncabezadoFacturaVenta, FACComentariosEncabezadoFacturaVenta, FACOrigenMovimientoEncabezadoFacturaVenta, FACImpresoEncabezadoFacturaVenta, FACHoraEncabezadoFacturaVenta, FACprefijoCotizacionFacturaVenta, FACNumeroCotizacionFacturaVenta)
SELECT  '00000', '00000000000' + Invoice_Header.Document, 'VE', 'FV', Employee.SSN, '000', Employee.SSN, Invoice_Header.Trade_Date, User_Values.Text1, User_Values.Text1, '000', '', '', 0, '', 0, 'DI', 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', 0, Invoice_Header.Taxable_Amt * 1.16, '', 0, 0, '', 'FAC', 0, '05:00:00 PM', '', ''
<span style="white-space: pre;"> </span>FROM Invoice_Header INNER JOIN
             Customer ON Invoice_Header.Customer = Customer.Customer INNER JOIN
             User_Values ON Customer.User_Values = User_Values.User_Values INNER JOIN
             Employee ON Customer.Sales_Rep = Employee.Employee
<div>o como mas se puede hacer???</div>
</div>
</span>

1 Respuesta

Respuesta
1
No entendí, haces varios JOIN's, pero nunca haces mención de la tabla de paso UPDATED/INSERTED, ¿cuál es el mensaje de error?
Si son varia tablas haciendo un join por que la información la traigo de varia tablas (consulta) al final al ponerle from insert, me genera error sobre algo que falta una coma, la verdad la revise y esta bien.
¿De qué otra forma podre hacer este insert con el desencadenador?
A ver, volvamos a lo mismo, ¿DÓNDE estas haciendo referencia a las tablas INSERTED, UPDATED?, los disparadores, son para eso, para tratar la información en dichas tablas.
Por otro lado, cuando haces un insert into, en tu select deben estar exactamente las columnas mencionadas en el insert into, incluso, del mismo tipo, de lo contrario recibirás errores en la inserción, ejemplo:
insert into empleado (id, nombre, paterno,manterno, fecha_nacimiento)
select 1, 'Pedro', 'Perez', 'Juarez'   -- falta la fecha de nacimiento
Tenías razón no tenía encuenta esto al final quedó así:
CREATE TRIGGER JobBossLand
on training.dbo.invoice_header
AFTER INSERT 
AS 
insert into   P01.dbo.FACENCABEZADOFACTURAVENTA(Campos...)
SELECT  '00000', '00000000000' + i.Document, 'VE', 'FV', E.SSN, '000', E.SSN, format(i.Trade_Date,MM/dd/aaaa), U.Text1, U.Text1, '000', '', '', 0, null, 0, 'DI', 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', 0, i.Taxable_Amt * 1.16, '', 0, 0, '', 'FAC', 0, '05:00:00 PM', '', ''
FROM inserted I, Customer C, User_Values U, Employee E
Where I.Customer = C.Customer and C.User_Values = U.User_Values and C.Sales_Rep = E.Employee
Muchas gracias por tu tiempo y paciencia.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas