Buen dia, saludos
Tengo una duda referente a usar dos set relations
SET RELATION TO clientes->clave INTO clientes
SET RELATION TO conceptos->cve INTO conceptos
El detalle es cuando tengo uno solo si me trabaja bien pero cuando le incluyo el segundo si me ejecuta el sistema pero entro al modulo de captura de documentos y me saca del sistema sin generarme ningun error...
Que puedo hacer ante este problema??
envio parte de mi codigo donde llamo a mis funciones
ESTOS SON MIS GET´S
REDEFINE get aYDts[4] Var cve1 ID 104 OF oDlg1 PICTURE "99999" WHEN NwMod valid TRAE_CLIENTE(cve1) //4 CLAVE CLIENTE
REDEFINE SAY oGet PROMPT cVar id 105 OF oDlg1 //12 VERIFICAR SI ESTA CORRECTO NOMBRE DEL CLIENTE
REDEFINE get aYDts[8] Var nCve ID 106 OF oDlg1 PICTURE "999" //valid trae_concepto(nCve) //5 CONCEPTO
REDEFINE SAY oSCon PROMPT cVar2 ID 107 OF oDlg1
EN EL PRIMERO EL USUARIO TECLEA LA CLAVE DEL CLIENTE Y VALIDA EN LA TABLA DE CLIENTES SI EXISTE Y EN EL REDEFINE SAY LO TRAE AL EDITBOX
EN EL SEGUNDO ES LO MISMO PERO SE TECLEA LA CLAVE DEL CONCEPTO Y VA Y BUSCA SI ESTA EN LA TABLA
LOS NOMBRES DE LAS TABLAS SON CAT_CLI PARA CLIENTES Y CAT_CON PARA CONCEPTOS
ESTAS SON MIS FUNCIONES
FUNCTION Trae_Cliente(cve1)
IF Clientes->(dbseek(cve1))
cVar := clientes->NOMBRE
oGet:Refresh()
RETURN(.T.)
ELSE
MsgInfo("Cliente no registrado")
RETURN(.F.)
ENDIF
return .T.
//***********************************************************
function trae_concepto(nCve)
IF conceptos->(dbseek(str(nCve,3)))
cVar2 := conceptos->concepto
oSCon:Refresh()
RETURN(.T.)
ELSE
MsgInfo("Concepto no registrado")
RETURN(.F.)
ENDIF
return .T.
ESTA ES MI GENERACION DE INDICES
FIELD CLAVE
use cat_cli alias clientes shared new
IF !FILE("cat_cli.CDX")
index on clave tag cat_cli //cambiar a campo
set index to cat_cli
ELSE
set index to cat_cli
ENDIF
use cap_doc alias captura shared new
IF !FILE("cat_doc.CDX")
index on clave tag cve_catdoc
set index to cap_doc
ELSE
set index to cap_doc
ENDIF
field cve
use cat_con alias conceptos shared new
index on cve tag cve_con
NO SE SI TENGA QUE VER QUE EL CAMPO CVE DE CONCEPTOS ES NUMERICO, LES MENCIONO TAMBIEN QUE EN LA TABLA CAP_DOC EXISTEN EN COMUN LOS _ CON LOS QUE GENERON INDICES, ES EL CAMPO CLAVE Y CVE QUE ESTAN CAP_DOC Y RESPECTIVAMENTE EN CLIENTES Y CONCEPTOS
SALUDOS Y ESPERO ME HAYA EXPLICADO BIEN
Sr. Antonio Linares
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
Ruben,
Las relaciones no se usan de esa manera.
En una relación hay una DBF "padre" y unas DBFs "hijas". La idea es que cuando se cambia de registro en el "padre", la relación hace una búsqueda automática en las "hijas", siempre y cuando exista un índice en la "hija" construido con la clave adecuada. Por ejemplo:
SET RELATION TO clientes->clave INTO facturas
Así cuando se cambie de un registro a otro en clientes, se hará una búsqueda automática (DbSeek(clientes->clave)) en facturas.
Las relaciones no se usan de esa manera.
En una relación hay una DBF "padre" y unas DBFs "hijas". La idea es que cuando se cambia de registro en el "padre", la relación hace una búsqueda automática en las "hijas", siempre y cuando exista un índice en la "hija" construido con la clave adecuada. Por ejemplo:
SET RELATION TO clientes->clave INTO facturas
Así cuando se cambie de un registro a otro en clientes, se hará una búsqueda automática (DbSeek(clientes->clave)) en facturas.
OK MUCHAS GRACIAS
Ok Sr. Antonio muchas gracias
Aplicare lo que me ha dicho y seguire adelante con mi programa
muchas gracias por tan valioso apoyo para los que comenzamos en esta etapa de desarrollo
Saludos
Atte.
Ruben
Aplicare lo que me ha dicho y seguire adelante con mi programa
muchas gracias por tan valioso apoyo para los que comenzamos en esta etapa de desarrollo
Saludos
Atte.
Ruben