Para modificar o mejorar una consulta , la única forma es activando el modo edición en la misma query ? Con el cuadro generador es mucho más sencillo pero no encuentro la opción para abrirlo y editarlo
¡Hola Nicolás! ¡Gracias por tu comentario! No hay otra forma de hacerlo que editándola. La otra opción que tienes, es volver a hacer la consulta y sobrescribir la existente. Esperamos haberte ayudado.
hola amigo , como puedo unir las tablas en el asistente de consultas sap , por ejemplo que de la tabla de facturas vs la tabla de pagos . quedo pendiente de tus comentarios
Hola amigo...te planteamos un reto...la tabla de facturas es la OINV, la de pagos es la ORCT y la de documentos pagados es la RCT2...mira los campos de esas tablas y te animamos a que descubras cómo se unen...comparte lo que hayas visto y te diremos si es correcto...
@@Artesapbuena tarde te comparto como lo ejecuto para que me orienten si es correcto. SELECT T0."DocNum", T0."CANCELED", T0."DocDate", T0."DocDueDate", T0."CardName", T0."NumAtCard", T0."DocTotal", T1."DocNum", T1."Canceled", T1."DocDate", T1."DocDueDate", T1."CardName", T1."DocTotal", T2."DocNum", T2."DocRate", T2."SumApplied" FROM OINV T0 , ORCT T1 INNER JOIN RCT2 T2 ON T1."DocEntry" = T2."DocNum" WHERE WHERE T0."DocDate" BETWEEN [%0] AND [%1]
¡Hola@@kayblancas4982! Gracias por compartir tu consulta con nosotros. Te cuento, la condición que estás poniendo (WHERE T0."DocDate" BETWEEN [%0] AND [%1]) filtra las facturas entre un rango de fechas ya que T0 hace referencia a la tabla de facturas de venta OINV. Por aquí bien. Por otra parte también relacionas bien la tabla de cobros ORTC con la de los documentos cobrados que es la RCT2. Sin embargo no haces ninguna relación entre la tabla de facturas y la de cobros o detalle de los cobros. Tras la tabla de facturas OINV pones una coma y la tabla de cobros ORCT pero no las unes de ninguna manera, tampoco con la RCT2. Tal cual lo escribes, lo que va a hacer la consulta es una combinación, es decir, por cada factura que entre en el intervalo que selecciones, va a cruzar sus datos todos los pagos que se hayan hecho independientemente de que sean de ella o no y que existan en el sistema. Si quieres saber si la factura se ha cobrado y cruzarla correctamente la unión debería ser algo así: FROM ORCT T1 INNER JOIN RCT2 T2 ON T1."DocEntry" = T2."DocNum" INNER JOIN OINV T0 ON T0.DOCENTRY = T2.DOCENTRY and T0.ObjType = t2.InvType WHERE T0."DocDate" BETWEEN [%0] AND [%1] AND T1.Canceled = 'N' Ponemos que el documento de cobro no esté cancelado en la unión ya que si se cancela el cobro te saldría la factura como cobrada aunque no lo estuviera Otra cosa que tienes que tener en cuenta es si quieres sacar sólo las facturas pagadas o todas las facturas que entren en el intervalo de fechas independientemente de que se hayan cobrado o no. Esto te condiciona la forma de hacer las uniones Pero bueno, con esta consulta tendrías lo que andas buscando SELECT T0."DocNum", T0."CANCELED", T0."DocDate", T0."DocDueDate", T0."CardName", T0."NumAtCard", T0."DocTotal", T1."DocNum", T1."Canceled", T1."DocDate", T1."DocDueDate", T1."CardName", T1."DocTotal", T2."DocNum", T2."DocRate", T2."SumApplied" FROM ORCT T1 INNER JOIN RCT2 T2 ON T1."DocEntry" = T2."DocNum" INNER JOIN OINV T0 ON T0.DOCENTRY = T2.DOCENTRY and T0.ObjType = t2.InvType WHERE T0."DocDate" BETWEEN [%0] AND [%1] AND T1.Canceled = 'N' ¡Cuéntanos tu resultado!
@@Artesap hola buena tarde disculpa la tardanza ala hora de ejecutar lo que describiste en el ultimo me arroja un error es el siguiente 1). [SAP AG][LIBODBCHDB32 DLL][HDBODBC32] General error;260 invalid column name: T0.DOCENTRY: line 1 col 333 'Valores definidos por usuario' (CSHS) (at pos 332)
@@kayblancas4982 Hola! ¿Podrías enviarnos la consulta completa? El campo sobre el que te da el error no pertenece a la tabla que hayas definido como T0
Hola Hodar. No hay una transacción para ver la lista de tablas en SAP Business One, pero si te vas al generador de consultas y en el campo donde indicas la tabla pulsas en el teclado el tabulador te aparecerán gran parte de las tablas del sistema. Esperamos que te sirva de ayuda.
¿Quieres aprender a crear consultas en SAP Business One? Sigue el perfil de uno de nuestros consultores en instagram: @sapb1idol ♥
Para modificar o mejorar una consulta , la única forma es activando el modo edición en la misma query ? Con el cuadro generador es mucho más sencillo pero no encuentro la opción para abrirlo y editarlo
¡Hola Nicolás! ¡Gracias por tu comentario! No hay otra forma de hacerlo que editándola. La otra opción que tienes, es volver a hacer la consulta y sobrescribir la existente. Esperamos haberte ayudado.
hola amigo , como puedo unir las tablas en el asistente de consultas sap , por ejemplo que de la tabla de facturas vs la tabla de pagos . quedo pendiente de tus comentarios
Hola amigo...te planteamos un reto...la tabla de facturas es la OINV, la de pagos es la ORCT y la de documentos pagados es la RCT2...mira los campos de esas tablas y te animamos a que descubras cómo se unen...comparte lo que hayas visto y te diremos si es correcto...
@@Artesapbuena tarde te comparto como lo ejecuto para que me orienten si es correcto.
SELECT T0."DocNum", T0."CANCELED", T0."DocDate", T0."DocDueDate", T0."CardName", T0."NumAtCard", T0."DocTotal", T1."DocNum", T1."Canceled", T1."DocDate", T1."DocDueDate", T1."CardName", T1."DocTotal", T2."DocNum", T2."DocRate", T2."SumApplied" FROM OINV T0 , ORCT T1 INNER JOIN RCT2 T2 ON T1."DocEntry" = T2."DocNum" WHERE WHERE T0."DocDate" BETWEEN [%0] AND [%1]
¡Hola@@kayblancas4982!
Gracias por compartir tu consulta con nosotros. Te cuento, la condición que estás poniendo (WHERE T0."DocDate" BETWEEN [%0] AND [%1]) filtra las facturas entre un rango de fechas ya que T0 hace referencia a la tabla de facturas de venta OINV. Por aquí bien. Por otra parte también relacionas bien la tabla de cobros ORTC con la de los documentos cobrados que es la RCT2.
Sin embargo no haces ninguna relación entre la tabla de facturas y la de cobros o detalle de los cobros. Tras la tabla de facturas OINV pones una coma y la tabla de cobros ORCT pero no las unes de ninguna manera, tampoco con la RCT2. Tal cual lo escribes, lo que va a hacer la consulta es una combinación, es decir, por cada factura que entre en el intervalo que selecciones, va a cruzar sus datos todos los pagos que se hayan hecho independientemente de que sean de ella o no y que existan en el sistema. Si quieres saber si la factura se ha cobrado y cruzarla correctamente la unión debería ser algo así:
FROM ORCT T1 INNER JOIN RCT2 T2 ON T1."DocEntry" = T2."DocNum"
INNER JOIN OINV T0 ON T0.DOCENTRY = T2.DOCENTRY and T0.ObjType = t2.InvType
WHERE T0."DocDate" BETWEEN [%0] AND [%1] AND T1.Canceled = 'N'
Ponemos que el documento de cobro no esté cancelado en la unión ya que si se cancela el cobro te saldría la factura como cobrada aunque no lo estuviera
Otra cosa que tienes que tener en cuenta es si quieres sacar sólo las facturas pagadas o todas las facturas que entren en el intervalo de fechas independientemente de que se hayan cobrado o no. Esto te condiciona la forma de hacer las uniones
Pero bueno, con esta consulta tendrías lo que andas buscando
SELECT T0."DocNum", T0."CANCELED", T0."DocDate", T0."DocDueDate", T0."CardName", T0."NumAtCard", T0."DocTotal",
T1."DocNum", T1."Canceled", T1."DocDate", T1."DocDueDate", T1."CardName", T1."DocTotal", T2."DocNum", T2."DocRate", T2."SumApplied"
FROM ORCT T1 INNER JOIN RCT2 T2 ON T1."DocEntry" = T2."DocNum"
INNER JOIN OINV T0 ON T0.DOCENTRY = T2.DOCENTRY and T0.ObjType = t2.InvType
WHERE T0."DocDate" BETWEEN [%0] AND [%1] AND T1.Canceled = 'N'
¡Cuéntanos tu resultado!
@@Artesap hola buena tarde disculpa la tardanza ala hora de ejecutar lo que describiste en el ultimo me arroja un error es el siguiente 1). [SAP AG][LIBODBCHDB32 DLL][HDBODBC32] General error;260 invalid column name: T0.DOCENTRY: line 1 col 333 'Valores definidos por usuario' (CSHS) (at pos 332)
@@kayblancas4982 Hola! ¿Podrías enviarnos la consulta completa? El campo sobre el que te da el error no pertenece a la tabla que hayas definido como T0
con que transaccion entro para ver la lista de tablas?
Hola Hodar. No hay una transacción para ver la lista de tablas en SAP Business One, pero si te vas al generador de consultas y en el campo donde indicas la tabla pulsas en el teclado el tabulador te aparecerán gran parte de las tablas del sistema. Esperamos que te sirva de ayuda.