ESTES ES EL CODIGO MANEJADOR DE LA DBF...
#include "FiveWin.ch"
#include "Folder.ch" // PARA USO DEL folder
FUNCTION fldconfig() // MAESTRO CONFIGURACIONES (constantes)
LOCAL oGetF1 := Array (15),; // GET FOLDER 2
oBtnCONFIG := Array (2) // BARRA DE BOTONES
PUBLIC oConfig := TGenerales() // VARIABLE PUBLICA DEFINIDA EN CLASES.PRG
DEFINE WINDOW oConfig:oWnd TITLE "Modulo: ARCHIVOS - Maestro Configuraciones" OF oDatos:oWndPPAL MDICHILD NO SYSTEMENU NOZOOM
SET MESSAGE OF oConfig:oWnd TO "Configuraciones y Constantes... " 2007
DEFINE DIALOG oConfig:oDlg RESOURCE "DLG_FOLDER" OF oConfig:oWnd // DEFINICION DEL oDLG PRINCIPAL
REDEFINE FOLDER oConfig:oFld ID 401 OF oConfig:oDlg; // DEFINICION DEL oFOLDER
PROMPT "Constantes"; // PESTAÑAS DEL FOLDER
DIALOGS "Config-01"
/////////////////////////////
DBSELECTAREA("jlconfig") // MAESTRO CONFIG
jlconfig->( OrdSetFocus(1) )
jlconfig->( DBGOTOP() )
DATABASE oConfig:oDbf
oConfig:oDbf:GOTOP()
oConfig:oDbf:LOAD()
////////////////////////////
// INICIO BARRA DE BOTONES
DEFINE BUTTONBAR oConfig:oBar SIZE 50, 50 OF oConfig:oWnd UPDATE 2007 // DEFINO BARRA BOTONES
oConfig:oBar:bRClicked := {|| NIL } // DESACTIVA BARRA DE BOTONES NAVEGUE BOTON DERECHO
DEFINE BUTTON oBtnCONFIG[1] OF oConfig:oBar UPDATE NOBORDER FILENAME oDatos:rBMP+"SALVAR32.BMP"; // BOTON BARRA - GUARDAR/ACTUALIZAR
ToolTip "Guardar/Actualizar";
MESSAGE "Guardar / Actualizar Datos";
ACTION ( grabacfg( oConfig:oDbf ),; // GUARDO DATOS
MSGWAIT("Espere, Guardando Datos...", " ATENCIÓN", 1) )
DEFINE BUTTON oBtnCONFIG[2] OF oConfig:oBar UPDATE NOBORDER FILENAME oDatos:rBMP+"SALIR32.BMP"; // BOTON BARRA - SALIR
ToolTip "Salir";
MESSAGE "Retornar al Menu Principal";
ACTION ( oConfig:oWnd:END() )
// INICIO oGETs 1ra.PESTAÑA oConfig:oFld
REDEFINE GET oGetF1[3] VAR oConfig:oDbf:cfg_codalu; // CODIGO ALUMNO CONSECUTIVO
ID 203 OF oConfig:oFld:aDialogs[1] UPDATE PICTURE "9999999";
VALID ( oConfig:oDbf:cfg_codalu >=0 )
REDEFINE GET oGetF1[4] VAR oConfig:oDbf:cfg_codpro; // CODIGO PROFESOR CONSECUTIVO
ID 204 OF oConfig:oFld:aDialogs[1] UPDATE PICTURE "9999999";
VALID ( oConfig:oDbf:cfg_codpro >=0 )
REDEFINE GET oGetF1[5] VAR oConfig:oDbf:cfg_codcon; // CODIGO CONGRESO CONSECUTIVO
ID 205 OF oConfig:oFld:aDialogs[1] UPDATE PICTURE "9999999";
VALID ( oConfig:oDbf:cfg_codcon >=0 )
REDEFINE GET oGetF1[7] VAR oConfig:oDbf:cfg_numfac; // NUMERO FACTURA CONSECUTIVO
ID 207 OF oConfig:oFld:aDialogs[1] UPDATE PICTURE "9999999";
VALID ( oConfig:oDbf:cfg_numfac >=0 )
REDEFINE GET oGetF1[8] VAR oConfig:oDbf:cfg_contro; // NUMERO CONTROL
ID 208 OF oConfig:oFld:aDialogs[1] UPDATE PICTURE "@K !!-!!!!!!!" READONLY
// FIN oGET F I N G E T s
ACTIVATE DIALOG oConfig:oDlg NOWAIT; // ACTIVA DLG Y LO UBICO DEBAJO DEL BTNBAR
ON INIT ( oConfig:oDlg:MOVE(oBtnCONFIG[2]:nWidth, 0) );
VALID( !GETKEYSTATE( VK_ESCAPE ) ) // DESHABILITA SALGA DEL DIALOGO CON Esc
ACTIVATE WINDOW oConfig:oWnd; // VENTANA TOMA TAMAÑO DEL DIALOGO
ON INIT ( oConfig:oWnd:SetSize(oConfig:oDlg:nWidth, oConfig:oDlg:nHeight + oBtnCONFIG[2]:nWidth) )
RETURN .T. // FIN MAESTRO CONFIGURACIONES (constantes)
------------------------------------------------------------------------------------------------------------------------------------
ACA COMO ACCEDO Y HAGO EL CODIGO CONSECUTIVO, HAY FUNCIONES QUE NO SON NECESARIAS YA QUE NO TIENE NADA
QUE VER CON EL AUMENTO DEL CODIGO...
DEFINE BUTTON oBtnALUM[5] OF oBarALUM UPDATE NOBORDER FILENAME oDatos:rBMP+"SALVAR32.BMP"; // BOTON BARRA GUARDAR/ACTUALIZAR
ToolTip "Guardar/Actualizar";
MESSAGE "Guardar / Actualizar Datos";
WHEN (nSALVAR > 1);
ACTION ( IIF( oDatos:lAPPEND == .T. ,;
(oDbfCONFIG:cfg_codalu := jlconfig->cfg_codalu + 1 ,;
oDbfALUM:alu_codigo := oDbfCONFIG:cfg_codalu ,;
nCodAlu := oDbfALUM:alu_codigo ,;
oDbfALUM:alu_nivel := nRadNIVEL ,;
oDbfALUM:alu_fecha := DATE() ,;
grabacfg( oDbfCONFIG ), .T.), .T. ) ,; // ASIGNO CODIGO AL NUEVO REGISTRO (se controla en jlconfig)
graba(oDbfALUM, oBrwALUM) ,; // GUARDO DATOS Y RETORNO AL xBROWSE PPAL.
addnotas(nCodAlu, oDbfNOTAS, oBrwNOTAS, oDatos:lAPPEND) ,; // ADICIONO LAS MATERIAS A dbf NOTAS Y LUEGO CARGO EL array
oFldALUM:SetOption(1) ,;
jlalumno->( OrdSetFocus(2) ) ,; // COLOCA DE NUEVO INDICE A LOS NOMBRES-EN VALIDACION codigo NO SE REPITA LO PONGO EN EL 1
oBrwALUM:GOTOP(), oBrwALUM:REFRESH() ,; // VOY 1er REGISTRO Y FERESCO xBRW
nSALVAR := 1 )
----------------------------------------------------------------------------------------------------------------------------------
ACA UNA IMAGEN...ESPERO TE SIRVA, CUALQUIER DUDA O MEJORIA ES BIENVENIDA....
Uploaded with
ImageShack.us