FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Operation Not Applicable -fklookup
Hola a todos, a ver si alguien tiene tiempo como para echarle un vistazo a este hilo:
versión : delphi 7, BDE, base de datos ORACLE 8i Situación: Tengo un programa para realizar informes con un estadillo de campos para rellenar. Uno de estos campos hasta ahora lo tenía como editable, es un campo VARCHAR2(50) llamado "Registro". A la hora de rellenar un informe lanzo la siguiente consulta para que me devuelva el registro correspondiente del informe: select * from informes where referencia_informe= 'XXX' la consulta la tengo en un Qry_Informe (aquí tengo el campo "Registro") Ahora necesito codificar este campo y guardar "Registro" de una manera concreta. (voy a seguir guardando la información en el mismo campo "Registro") Se me ha proporcionado una tabla llamada Registros con la siguiente estructura: REGISTROS cod_registro varchar2 (7) --> donde todos los valores serán numéricos: Ejemplo: 3001245 Nombre_registro varchar2 (50) Ejemplo: Valladolid 3 Esta tabla me permite cerrar el campo que hasta ahora tenía como editable, de tal manera que el usuario no tenga más que seleccionar de un desplegable. El problema que los datos que tengo en mi aplicación cliente-servidor pueden venir de una web (1) directamente o pueden darse de alta en mi aplicación (2) internamente. (1)Asi que cuando vienen de la web solo tengo que mostrarlo, pero de la web ya me viene el código y yo quiero mostrar la descripción: para eso creo un camplo fklookup REGISTRO_WEB que es el que muestro ahora en el estadillo del informe keyfield: registro lookupkeyfield:cod_registro lookupresultfield:nombre_registro (2) Casos internos tengo un DBLookupComboBox y cuando entro aparece el listado y me permite seleccionar. hasta aquí todo funciona perfecto pero tengo un (3) tercer caso que es el que me fastidia el chiringuito: (3) si intento consultar un informe realizado antes de la implantación de este sistema donde en el campo registro tengo un valor alfanumérico que no aparece en la tabla REGISTROS obtengo el siguiente error: OPERATION NOT APPLICABLE quería saber si a alguien se le ocurre algo para resolver este tercer problema. No se si se puede hacer algo para que no me salte el error con el campo lookup y poder mostrar lo que tengo en el campo No se si me he sabido explicar, intentar lo he intentado, a ver si alguien puede darme alguna pista o se le ocurre algo. Gracias por vuestro tiempo. |
#2
|
|||
|
|||
resolución-campo fklookup en tiempo ejecución
finalmente lo único que se me ha ocurrido es generar el campo fklookup en tiempo de ejecución, así pues, lo que hago es una consulta para ver el estado del campo y si no es un campo codificado lo trato de una manera, y cuando el campo es codificado entonces genero el campo flklookup de la siguiente manera:
with TStringField.Create(MiDataSet) do begin FieldName := 'FieldName'; FieldKind := fkLookup; DataSet := MiDataSet; Name := MiDataSet.Name + FieldName; KeyFields := 'MiKeyFields'; LookupDataSet := MiLookupDataSet; LookupKeyFields := 'MiLookupKeyFields'; LookupResultField := 'MiLookupResultField'; MiDataSet.FieldDefs.Add(FieldName, ftString, 50, False); end; |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Operation Not Applicable | koalko84 | Conexión con bases de datos | 2 | 29-03-2011 17:45:14 |
Error: "Operation not applicable" al activar un query | karaoke | Conexión con bases de datos | 3 | 17-12-2007 12:26:32 |
Mensaje Operation no applicable | zugazua2001 | Varios | 5 | 05-04-2006 10:01:30 |
Operation not applicable on filter | jymy788 | Conexión con bases de datos | 2 | 26-05-2005 15:23:01 |
|