Hola la tabla esta en un servidor la abro con el browse
asignadole el datasource.
he conseguido reduriar el tiempo con un query de cuatro campos a tres
segundos con esto
:oSQLQueryPersonal:cSelect :="Select id,orden,nif,afiliacion,nombre From
Personal"
luego.........
METHOD MantenEditar( oSender ) CLASS TFrmPersonal
WITH OBJECT FrmEditPersonal():New( Application:oMainForm )
:cText := "Edición de Personal"
:lEdit := .T. // Modo Edicion
:cFiltroNif :=
Application:oMainForm:otabpersonal:oBrw:aCols[2]:Value() // Pasa la Tabla
para Editar
IF :ShowModal() == mrOK
::oSQLQueryPersonal:Refresh()
::oBrw:Refresh()
ELSE
// :oSQLPersonal:Cancel()
ENDIF
END WITH
RETURN NIL
luego en otro formulario para editar
METHOD FormShow( oSender ) CLASS FrmEditPersonal
::oFolderPage1:SetFocus()
If ::lEdit == .T.
WaitOn("Recuperando Datos del Servidor...")
// Abrir con filtro la tabla
::cFiltroNif :=
Application:oMainForm:otabpersonal:oBrw:aCols[3]:Value()
::oSQLQuery1:cSelect := "Select * From personal where nif like
'" + ::cFiltroNif + "'"
::oSQLQuery1:lOpen := .t.
//Establezco un filtro antes de abrir las tablas
::oSQLContratos:Filter("NIF = '" + ::cFiltroNif + "'")
::oSQLTableBajait:Filter("NIF = '" + ::cFiltroNif+ "'")
::oSQLTableSanciones:Filter("NIF = '" + ::cFiltroNif + "'")
::oSQLPrestamos:Filter("NIF = '" + ::cFiltroNif + "'")
::oSQLTableRetenciones:Filter("NIF = '" + ::cFiltroNif + "'")
::oSQLTableHijos:Filter("NIF = '" + ::cFiltroNif + "'")
// Abre Tablas con Filtro
::oSQLContratos:lOpen := .T.
::oSQLTableBajait:lOpen := .T.
::oSQLTableSanciones:lOpen := .T.
::oSQLPrestamos:lOpen := .T.
::oSQLTableRetenciones:lOpen := .T.
::oSQLTableHijos:lOpen := .T.
::CargaArray()
::oSQLQuery1:Edit()
WaitOff()
ElseIf ::lEdit ==.F.
************************************************************ ************************
********************** ME AÑADE EL REGISTRO, PERO NO FUNCIONA AL GRABAR
********************** NO SE SILO HAGO CORRECTAMENTE
************************************************************ *************************
::oSQLQuery1:cSelect := "Insert Into Personal(Orden,
Delegacion,Nombre,Fecha_Alta,
Nombre_P,Nombre_M,Afiliacion, NIF, Fecha_Nacimiento,Poblacion_N,
Estado_C,Nacionalidad,Sexo,Provincia_N,Telefono_1,Via,Domici lio,N_Domicilio,
Codigo_Postal, Poblacion, Provincia, Codigo_C,
Fecha_Vto_C,Fecha_V_P,Fecha_E_A, Campo25,Tipo_Contrato, Categoria,
Nombre_Categ,Grupo_Antigueda, Grupo_Cotizacion, Baremo,
Campo32,Campo33,Centro_Trabajo, Des_Cen, Numero_Hijos,
Cuenta_Banco,Numero_Oficina, Dc, Campo40, Campo41,
Campo42,Cuente_Cotizacion,Empresa, Fecha_Baja_C,Numero_Banco, Apellidos,
Movil,Telefono_2,Referencia,Nombre_Banco, Codigo_P_B, Poblacion_Banco,
Provincia_Banco,Situacion_Irpf, Nif_Conyuge,Minusvalia, Domicilio_Banco, id)
Values('', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '',
'', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '',
'','', '', '', '', '', '', '', '', '', '', '', '', '', '', '','', '', '',
'', '', '', '','','0')"
::oSQLQuery1:lOpen := .t.
::CargaArray()
::oSQLQuery1:Edit()
EndIf
RETURN Nil
añadir registros para editarlos repito la consulta otra vez para traerme
todos los campos y funciona bien el problema esta al añadir, y no se si
tambien al borrar no he llegado hay
Un Saludo, Gracias
"Jose F. Gimenez" <
jfgimenez@wanadoo.es> escribió en el mensaje
news:[email=
484ed57f@ozsrv2.ozlan.local...]
484ed57f@ozsrv2.ozlan.local...[/email]
> Juan José,
>
>> hola estoy probando xailer pero me encuentro con un problema que
>> decidiria si adopto el xailer o no
>>
>> Tengo una tabla con 5000 registros y 47 campos ago una consulta sobre
>> tres campos "select nif,afi,nombre from personal" que tarda alrededor de
>> 27 segundos en mostrarse en un browse hay alguna forma de poder
>> acelerarlo
>
> me parece mucho tiempo para una consulta tan sencilla, aunque se trate de
> 5000 registros. Envíanos un pequeño proyecto de ejemplo con lo que estás
> haciendo exactamente, y si es posible también, la BD, aunque sea con datos
> ficticios. De esa forma podremos comprobar qué es lo que no está bien.
>
> --
> Un saludo,
>
> José F. Giménez
>
http://www.xailer.com
>
http://www.xailer.info
>