Orden de ventas error sql server

Buenas tardes

Me arroja ese error al momento de hacer una nota de ventas , que sera ¡¡¡

[Microsoft][ODBC Driver 13 for SQL Server][SQL Server]La subconsulta ha devuelto más de un valor, lo que no es correcto cuando va a continuación de =, !=, <, <=, >, >= o cuando se utiliza como expresión. ‘Información de sociedad GL’ (CINF) (CINF)

@Jorge_Hernand valida si hay algún campo con búsqueda formateada, ese campo y búsqueda están generando como resultado mas de un registro y por eso produce el error.

Patrcio si tiene 3 busqueda formateada , que deberia hacer en ese caso ?

patricio el problema lo solucione que en cada busqueda formateada le coloque top 1, no se que efecto hace

te va a traer el primer registro solamente si es que hay mas de uno. Puedes indicar el código de la búsqueda formateada para ver si podemos ajustar para que muestre solo uno si ese es el caso.

Pense que ese era el problema , me continua saliendo

Lo extraño es que son 64 linea en el grid y lo hice con 20 y si me paso la nota de ventas , ahora no se que pueda ser el error

Por eso la búsqueda formateada tiene que estar asociada a una consulta, busca la consulta y ve el código para saber que hace y así te podemos ayudar, por que quizás solo necesitas un cambio de linea en el código para que traiga solo un valor. Generalmente esos problemas se dan por que en el where del código referencia a mas de un registro pero sin poder ver el código no podemos ayudar mucho.

eso son las 3 busqueda formateada que tiene la nota de ventas

1 en la cabecera y otra dos en el detalle

SELECT TOP 1 T0.[U_TIPO_VTA] FROM OCRD T0 WHERE T0.[CardCode] =$[$4.0.0]

SELECT TOP 1T0.U_JA_CANAL FROM OCRD T0 WHERE T0.CardCode=$[ORDR.CardCode]

SELECT TOP 1 T0.U_JA_SUBCANAL FROM OCRD T0 WHERE T0.CardCode=$[ORDR.CardCode]

Eso ocurre porque la consulta que has construido para la búsqueda formateada devuelve más de un valor… no tiene registro único. Debes profundizar en los datos y en realizar la consulta sql que devuelva un solo valor…y no varios.

estimado y eso como lo hago en virtud a esta consulta

SELECT TOP 1 T0.[U_TIPO_VTA] FROM OCRD T0 WHERE T0.[CardCode] =$[$4.0.0]

Jorge Valida las consultas individualmente, como haces eso, copia cada consulta y en vez de ingresar T0.CardCode=$[ORDR.CardCode] le indicas un CardCode Valido, así podrás saber en que nivel te esta trayendo mas de un registro por la consulta.

elimina el TOP 1 de la consulta y ejecutala.

REALICE LA CONSULTA Y ME TRAE EL VALOR QUE ESTA AGREGADO EN UN CAMPO DE USUARIO

Es que el error es ese, quizás con otro Cardcode te trae mas de un registro o hay otra BF que esta generando mas de un registro no esas 3 que indicaste. Quizás en un campo U o un campo nativo.

en estas 3 busqueda formateada solo trae un solo registro no trae mucho registro . entonces no se donde mas buscar

Sí las consultas ya las probaste y cada una trae un registro entonces no es a nivel de busquedas formateadas, porque entiendo que es al momento de crear, lo que puede estar pasando es a nivel de Transaction notification posiblemente estes comparando algo de forma incorrecta.

Deberías dar hacia atrás.

Desactiva las bf y prueba que no tienes errores.

Reactiva de una en una las búsquedas formateadas.

Revisa su codigo sql también, para verificar que cada consulta solo devuelve un valor y si haces top, lo que estas haciendo es quedarte con uno, pero has de mirar si ese que te queda es el correcto… Top 1, depende del campo por el que lo hagas… número, alfanumérico, fecha… devuelve unos valores u otros.