8/18/2019 Gestion de Clinicas
1/28
LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”
Ing. Wagner Bances Puémape 1
Las ventanas van a ser llamadas con el comando opensheet, siguiendo la siguiente sintaxis:
opensheet(w_especialidad,w_principal,5,original!)
Donde:
w_especialidad, es el nombre de la ventana a ser abierta
w_principal, es el nombre de la ventana que va a contener a la ventana abierta. Casi
siempre es la ventana principal que contiene al men ú.
5, es la posición en donde se va a colocar todas las ventanas abiertas, en este caso es
la posición n úmero 5, si consideramos que la posición 1 es “Archivo”, la posici ón 2 es
“Edici ón” y así sucesivamente
Original!, es el modo en que va a ser abierta, puede ser tambi én cascade! o layered!
8/18/2019 Gestion de Clinicas
2/28
LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”
Ing. Wagner Bances Puémape 2
w_especialidad Open()
dw_especialidad.SetTransObject(sqlca)dw_especialidad.Retrieve()
tab_1.tabpage_1.dw_especialidad_1.SetTransObject(sqlca)tab_1.tabpage_1.dw_especialidad_1.Retrieve()
dw_espec ial idad i temfocuschanged()pb_borrar.enabled=truetab_1.tabpage_1.dw_especialidad_1.scrolltorow(dw_especialidad.getrow())
Botones de Navegaci ón
Cb_1(|
8/18/2019 Gestion de Clinicas
3/28
LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”
Ing. Wagner Bances Puémape 3
cb_3(>) click()long nfilas,ntotalfilasntotalfilas=tab_1.tabpage_1.dw_especialidad_1.rowcount()nfilas=tab_1.tabpage_1.dw_especialidad_1.getrow()
if nfilas < ntotalfilas thentab_1.tabpage_1.dw_especialidad_1.ScrollNextRow()cb_1.enabled=truecb_2.enabled=truecb_3.enabled=true
cb_4.enabled=trueelse
cb_3.enabled=falsecb_4.enabled=false
end if
cb_4(>|) click()long nfilasnfilas=tab_1.tabpage_1.dw_especialidad_1.RowCount()tab_1.tabpage_1.dw_especialidad_1.ScrolltoRow(nfilas)cb_1.enabled=truecb_2.enabled=truecb_3.enabled=falsecb_4.enabled=false
Picture Botton
Pb_adicionar(añadir) click()tab_1.tabpage_1.dw_especialidad_1.enabled = trueinteger n, numerodw_especialidad.enabled = false
SELECT MAX(esp_numero)INTO :numeroFROM especialidad;
IF ISNULL(numero) THEN numero=0numero = numero + 1
n=tab_1.tabpage_1.dw_especialidad_1.insertrow(0)tab_1.tabpage_1.dw_especialidad_1.scrolltorow(n)
tab_1.tabpage_1.dw_especialidad_1.setitem(n,"esp_numero",numero)tab_1.tabpage_1.dw_especialidad_1.setfocus()
pb_adicionar.enabled=falsepb_borrar.enabled=falsepb_modificar.enabled=falsepb_Cancelar.enabled=trae
pb_modificar click()tab_1.tabpage_1.dw_especialidad_1.enabled=truetab_1.tabpage_1.dw_especialidad_1.setfocus()pb_adicionar.enabled=falsepb_borrar.enabled=falsePb_Cancelar.enabled=trae
8/18/2019 Gestion de Clinicas
4/28
LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”
Ing. Wagner Bances Puémape 4
Pb_grabar Click()integer a,ba=messagebox("Sistema de Gesti ón de Clínica","¿Datos Corectos?”,Question!,YesNo!)
if a = 1 thenb=tab_1.tabpage_1.dw_especialidad_1.update()if b=1 then
commit using sqlca;else
rollback using sqlca;end if
dw_especialidad.retrieve()tab_1.tabpage_1.dw_especialidad_1.retrieve()pb_adicionar.enabled=truepb_modificar.enabled=truepb_borrar.enabled=truepb_cancelar.enabled=falsetab_1.tabpage_1.dw_especialidad_1.enabled=false
end if dw_especialidad.enabled = truedw_especialidad.triggerevent(rowfocuschanged!)
pb_borrar click()integer fila,bfila=messagebox("Sistema de Gestión de Clínica"," ¿Desea Eliminar elRegistro?",Question!,yesno!)if fila =1 then
dw_especialidad.deleterow(tab_1.tabpage_1.dw_especialidad_1.getrow())b=dw_especialidad.update()if b=1 then
commit using sqlca;else
rollback using sqlca;end if
end if dw_especialidad.retrieve()tab_1.tabpage_1.dw_especialidad_1.retrieve()
pb_cancelar click()tab_1.tabpage_1.dw_especialidad_1.enabled=falsetab_1.tabpage_1.dw_especialidad_1.retrieve()dw_especialidad.enabled = truepb_adicionar.enabled=truepb_borrar.enabled=truepb_modificar.enabled=truepb_Cancelar.enabled=false
pb_cerrar click()close(w_especialidad)
sle_1.text modified()
string espinteger regesp="upper(esp_descripcion) like '"+ upper(sle_1.text)+"%'"reg=dw_especialidad.find(esp,1,dw_especialidad.rowcount())if reg=0 then
messagebox("Sistema de Gestión de Clínica","No Existe esta Especialidad")else
dw_especialidad.scrolltorow(reg)
dw_especialidad.SetRowFocusIndicator(hand!)end if
8/18/2019 Gestion de Clinicas
5/28
LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”
Ing. Wagner Bances Puémape 5
Tabla Seleccionada (Especialidad)
DataWindow Especialidad(Vista)
8/18/2019 Gestion de Clinicas
6/28
LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”
Ing. Wagner Bances Puémape 6
DataWindow Especialidad_1(Edici ón)
8/18/2019 Gestion de Clinicas
7/28
LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”
Ing. Wagner Bances Puémape 7
w _pac iente Open()dw_paciente.SetTransObject(sqlca)dw_paciente.Retrieve()
tab_1.tabpage_1.dw_paciente_1.SetTransObject(sqlca)tab_1.tabpage_1.dw_paciente_1.Retrieve()
dw_paciente itemfocuschanged()pb_borrar.enabled=truetab_1.tabpage_1.dw_paciente_1.scrolltorow(dw_paciente.getrow())
Picture Botton
Pb_adicionar(añadir) click()tab_1.tabpage_1.dw_paciente_1.enabled = trueinteger n,numerodw_paciente.enabled = false
SELECT MAX(pac_numero)INTO :numero
FROM paciente;
IF ISNULL(numero) THEN numero=0
numero = numero + 1
n=tab_1.tabpage_1.dw_paciente_1.insertrow(0)
tab_1.tabpage_1.dw_paciente_1.scrolltorow(n)tab_1.tabpage_1.dw_paciente_1.setitem(n,"pac_numero",numero)tab_1.tabpage_1.dw_paciente_1.setfocus()pb_adicionar.enabled=false
dw_paciente_1
dw_paciente
Picture Button
8/18/2019 Gestion de Clinicas
8/28
LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”
Ing. Wagner Bances Puémape 8
pb_borrar.enabled=falsepb_modificar.enabled=falsepb_Cancelar.enabled=true
pb_modificar click()tab_1.tabpage_1.dw_paciente_1.enabled=truetab_1.tabpage_1.dw_paciente_1.setfocus()pb_adicionar.enabled=falsepb_borrar.enabled=falsepb_Cancelar.enabled=true
Pb_grabar Click()integer a,ba=messagebox("Sistema de Gestión de Clínica"," ¿Datos Corectos? ",Question!,YesNo!)
if a = 1 thenb=tab_1.tabpage_1.dw_paciente_1.update()if b=1 then
commit using sqlca;else
rollback using sqlca;end if dw_paciente.retrieve()tab_1.tabpage_1.dw_paciente_1.retrieve()pb_adicionar.enabled=truepb_modificar.enabled=truepb_borrar.enabled=truepb_cancelar.enabled=falsetab_1.tabpage_1.dw_paciente_1.enabled=false
end if dw_paciente.enabled = truedw_paciente.triggerevent(rowfocuschanged!)
pb_borrar click()integer fila,bfila=messagebox("Sistema de Gestión de Clínica"," ¿Desea Eliminar elRegistro?",Question!,yesno!)
if fila =1 thendw_paciente.deleterow(tab_1.tabpage_1.dw_paciente_1.getrow())b=dw_paciente.update()if b=1 then
commit using sqlca;else
rollback using sqlca;end if
end if dw_paciente.retrieve()tab_1.tabpage_1.dw_paciente_1.retrieve()
pb_cancelar click()tab_1.tabpage_1.dw_paciente_1.enabled=false
tab_1.tabpage_1.dw_paciente_1.retrieve()dw_paciente.enabled = truepb_adicionar.enabled=truepb_borrar.enabled=truepb_modificar.enabled=truepb_Cancelar.enabled=false
pb_cerrar click()close(w_paciente)
8/18/2019 Gestion de Clinicas
9/28
LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”
Ing. Wagner Bances Puémape 9
sle_1.text modified()string pacinteger reg
pac="upper(pac_apellido) like '"+ upper(sle_1.text)+"%'"reg=dw_paciente.find(pac,1,dw_paciente.rowcount())if reg=0 then
messagebox("Sistema de Gestión de Clínica","Paciente no Registrado")else
dw_paciente.scrolltorow(reg)
dw_paciente.SetRowFocusIndicator(hand!)end if
8/18/2019 Gestion de Clinicas
10/28
LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”
Ing. Wagner Bances Puémape 10
Tabla Seleccionada (Pac iente)
DataWindow Paciente(Vista)
8/18/2019 Gestion de Clinicas
11/28
LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”
Ing. Wagner Bances Puémape 11
DataWindow Paciente(Edici ón)
8/18/2019 Gestion de Clinicas
12/28
LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”
Ing. Wagner Bances Puémape 12
w_doctor Open()dw_doctor.SetTransObject(sqlca)dw_ doctor.Retrieve()
tab_1.tabpage_1.dw_ doctor _1.SetTransObject(sqlca)tab_1.tabpage_1.dw_ doctor _1.Retrieve()
dw_paciente rowfocuschanged()pb_borrar.enabled=truetab_1.tabpage_1.dw_doctor_1.scrolltorow(dw_doctor.getrow())
Picture Botton
Pb_adicionar(añadir) click()tab_1.tabpage_1.dw_doctor_1.enabled = trueinteger n,numerodw_doctor.enabled = false
SELECT MAX(doc_numero)INTO :numeroFROM doctor;
IF ISNULL(numero) THEN numero=0numero = numero + 1n=tab_1.tabpage_1.dw_doctor_1.insertrow(0)
tab_1.tabpage_1.dw_doctor_1.scrolltorow(n)tab_1.tabpage_1.dw_doctor_1.setitem(n,"doc_numero",numero)tab_1.tabpage_1.dw_doctor_1.setfocus()
pb_adicionar.enabled=false
pb_borrar.enabled=falsepb_modificar.enabled=falsepb_Cancelar.enabled=trae
8/18/2019 Gestion de Clinicas
13/28
LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”
Ing. Wagner Bances Puémape 13
pb_modificar click()tab_1.tabpage_1.dw_doctor_1.enabled=truetab_1.tabpage_1.dw_doctor_1.setfocus()pb_adicionar.enabled=falsepb_borrar.enabled=falsepb_Cancelar.enabled=true
Pb_grabar Click()integer a,b
a=messagebox("Sistema de Gestión de Clínica"," ¿Datos Corectos? ",Question!,YesNo!)if a = 1 then
b=tab_1.tabpage_1.dw_doctor_1.update()if b=1 then
commit using sqlca;else
rollback using sqlca;end if dw_doctor.retrieve()tab_1.tabpage_1.dw_doctor_1.retrieve()
pb_adicionar.enabled=truepb_modificar.enabled=truepb_borrar.enabled=truepb_cancelar.enabled=falsetab_1.tabpage_1.dw_doctor_1.enabled=false
end if
dw_doctor.enabled = truedw_doctor.triggerevent(rowfocuschanged!)
pb_borrar click()integer fila,b
fila=messagebox("Sistema de Gestión de Clínica"," ¿Desea Eliminar elRegistro?",Question!,yesno!)
if fila =1 thendw_doctor.deleterow(tab_1.tabpage_1.dw_doctor_1.getrow())b=dw_doctor.update()if b=1 then
commit using sqlca;else
rollback using sqlca;end if
end if dw_doctor.retrieve()tab_1.tabpage_1.dw_doctor_1.retrieve()
pb_cancelar click()tab_1.tabpage_1.dw_doctor_1.enabled=false
tab_1.tabpage_1.dw_doctor_1.retrieve()dw_doctor.enabled = truepb_adicionar.enabled=truepb_borrar.enabled=truepb_modificar.enabled=truepb_Cancelar.enabled=false
pb_cerrar click()close(w_doctor)
8/18/2019 Gestion de Clinicas
14/28
LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”
Ing. Wagner Bances Puémape 14
sle_1.text modified()string docinteger reg
doc="upper(compute_1) like '"+ upper(sle_1.text)+"%'"reg=dw_doctor.find(doc,1,dw_doctor.rowcount())if reg=0 then
messagebox("Sistema de Gestión de Clínica","Doctor no Registrado")else
dw_doctor.scrolltorow(reg)
dw_doctor.SetRowFocusIndicator(hand!)end if
8/18/2019 Gestion de Clinicas
15/28
LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”
Ing. Wagner Bances Puémape 15
Tabla Seleccionada (Doctor)
DataWindow Doctor(Vista)
8/18/2019 Gestion de Clinicas
16/28
LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”
Ing. Wagner Bances Puémape 16
DataWindow para el DropDownDW del DataWindow Doctor_1
Eliminar las cabeceras y el campo esp_numero, solamente quedando el campoesp_descripcion
DataWindow Doctor(Edición)
8/18/2019 Gestion de Clinicas
17/28
LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”
Ing. Wagner Bances Puémape 17
Style Type DropDrowDW (esp_numero)
Style Type Drop DrowListBox (doc_estado)
8/18/2019 Gestion de Clinicas
18/28
LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”
Ing. Wagner Bances Puémape 18
PROGRAMACION DE PROGRAMAS MEDICOS
Declare Global Variablesinteger estado,codigo,his_num
w_pogramacion open()dw_programacion.settransobject(sqlca)dw_programacion.retrieve()
string a,binteger num
estado=0
Declare nombres Cursor for select doc_numero, doc_nombre,doc_apellidofrom doctor where doc_estado='Activo';
Open nombres;Fetch nombres into :num ,:a ,:b;Do until sqlca.sqlcode=100
tab_1.tabpage_1.ddlb_2.additem(string(num)+" " +b+" ,"+a)Fetch nombres into :num ,:a ,:b;
LoopClose nombres;
Declare con Cursor for select con_numero,con_descripcion
from consultorio;Open con;Fetch con into :num,:a;Do until sqlca.sqlcode=100
tab_1.tabpage_1.ddlb_1.additem(string(num)+" "+a)Fetch con into :num,:a;
LoopClose con;
tab_1.tabpage_1.em_1.text=string(today())
dw_programacion
Sle_2
ddlb_1
Sle_1
ddlb_2 ddlb_3
em_1
em_2
8/18/2019 Gestion de Clinicas
19/28
LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”
Ing. Wagner Bances Puémape 19
dw_programacion rowfocuschanged()pb_borrar.enabled=true
Pb_adicionar click()integer numero
SELECT MAX(pro_numero)INTO :numeroFROM programacion;
estado=1
IF ISNULL(numero) THEN numero=0numero = numero + 1tab_1.tabpage_1.sle_2.text=string(numero)tab_1.tabpage_1.sle_2.enabled=true
tab_1.tabpage_1.ddlb_1.enabled=truetab_1.tabpage_1.ddlb_2.enabled=truetab_1.tabpage_1.ddlb_3.enabled=truetab_1.tabpage_1.em_1.enabled=truetab_1.tabpage_1.em_2.enabled=true
pb_borrar.enabled=falsepb_modificar.enabled=falsepb_grabar.enabled=truepb_Cancelar.enabled=true
pb_modificar click()pb_adicionar.enabled=falsepb_grabar.enabled=truepb_borrar.enabled=falsepb_Cancelar.enabled=true
estado=0
integer cod_pro,cod_doc,cod_con,citas,ndate fechastring turno,con_nom,doc_nom,doc_apelong row
row = dw_programacion.getrow()cod_pro=dw_programacion.GetItemNumber(row,"programacion_pro_numero")cod_con=dw_programacion.GetItemNumber(row,"consultorio_con_numero")con_nom=dw_programacion.GetItemString(row,"consultorio_con_descripcion")doc_ape=dw_programacion.GetItemString(row,"doctor_doc_apellido")doc_nom=dw_programacion.GetItemString(row,"doctor_doc_nombre")cod_doc=dw_programacion.GetItemNumber(row,"doctor_doc_numero")fecha=dw_programacion.GetItemDate(row,"programacion_pro_fecha")citas=dw_programacion.GetItemNumber(row,"programacion_pro_ncitas")
turno=dw_programacion.GetItemString(row,"programacion_pro_turno")
tab_1.tabpage_1.ddlb_1.enabled=truetab_1.tabpage_1.ddlb_2.enabled=truetab_1.tabpage_1.ddlb_3.enabled=truetab_1.tabpage_1.em_1.enabled=truetab_1.tabpage_1.em_2.enabled=true
tab_1.tabpage_1.sle_2.text=string(cod_pro)tab_1.tabpage_1.em_1.text=string(fecha)
8/18/2019 Gestion de Clinicas
20/28
8/18/2019 Gestion de Clinicas
21/28
LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”
Ing. Wagner Bances Puémape 21
tab_1.tabpage_1.em_2.enabled=false
end if else
a=messagebox("Sistema de Gesti ón de Clínica","Los Datos ha sido Modificados, ¿EstaSeguro? ",Question!,YesNo!)
if a = 1 thenupdate "programacion"
set "con_numero" = :cod_con,"doc_numero" = :cod_doc, "pro_fecha" = :fecha,"pro_ncitas" = :citas,
"pro_turno" = :turnowhere "programacion"."pro_numero" = :numero;
if sqlca.sqlcode 0 thenMessagebox("Sistema de Gestión de Clínica","Imposible Modificar los
Datos")else
commit using sqlca;end if
dw_programacion.retrieve()dw_programacion.triggerevent(rowfocuschanged!)
pb_adicionar.enabled=truepb_modificar.enabled=truepb_borrar.enabled=truepb_cancelar.enabled=false
tab_1.tabpage_1.sle_2.text=""tab_1.tabpage_1.sle_2.enabled=falsetab_1.tabpage_1.ddlb_1.text=""tab_1.tabpage_1.ddlb_1.enabled=falsetab_1.tabpage_1.ddlb_2.text=""tab_1.tabpage_1.ddlb_2.enabled=falsetab_1.tabpage_1.ddlb_3.text=""tab_1.tabpage_1.ddlb_3.enabled=false
tab_1.tabpage_1.em_1.text=""tab_1.tabpage_1.em_1.enabled=falsetab_1.tabpage_1.em_2.text=""tab_1.tabpage_1.em_2.enabled=false
end if end if
pb_borrar click()integer fila,b,codigolong row
fila=messagebox("Sistema de Gestión de Clínica"," ¿Desea Eliminar elRegistro?",Question!,yesno!)if fila =1 then
row = dw_programacion.getrow()codigo=dw_programacion.GetItemNumber(row,"programacion_pro_numero")
Delete from programacion where pro_numero = :codigo;commit using sqlca;
end if dw_programacion.retrieve()
8/18/2019 Gestion de Clinicas
22/28
LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”
Ing. Wagner Bances Puémape 22
pb_cancelar click()dw_programacion.retrieve()pb_adicionar.enabled=truepb_borrar.enabled=truepb_modificar.enabled=truepb_Cancelar.enabled=false
pb_cerrar click()close(w_programacion)
sle_1 modified()string docinteger reg
doc="upper(compute_1) like '"+ upper(sle_1.text)+"%'"reg=dw_programacion.find(doc,1,dw_programacion.rowcount())if reg=0 then
messagebox("Sistema de Gestión de Clínica","Doctor no Programado")else
dw_programacion.scrolltorow(reg)dw_programacion.SetRowFocusIndicator(hand!)
end if
Este datawindows de nombre d_programacion, contiene e campos que est án invisibles, estosson: doctor_doc_numero, consultorio_con_numero, consultorio_con_descripcion,doctor_doc_nombre, doctor_doc_apellido.
Apellidos y Nombres es un campo calculado.(computed field)
8/18/2019 Gestion de Clinicas
23/28
LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”
Ing. Wagner Bances Puémape 23
GENERACION DE CITAS MÉ DICAS
w_consulta open()dw_consulta.settransobject(sqlca)dw_consulta.retrieve()
string a,binteger num
Declare nombres Cursor for select pac_numero, pac_nombre,pac_apellidofrom paciente;
Open nombres;
Fetch nombres into :num ,:a ,:b;Do until sqlca.sqlcode=100
tab_1.tabpage_1.ddlb_1.additem(string(num)+" " +b+" ,"+a)Fetch nombres into :num ,:a ,:b;
LoopClose nombres;
Declare con Cursor for select con_numero,con_descripcionfrom consultorio;Open con;Fetch con into :num,:a;Do until sqlca.sqlcode=100
tab_1.tabpage_1.ddlb_2.additem(string(num)+" "+a)Fetch con into :num,:a;
LoopClose con;
tab_1.tabpage_1.em_1.text=string(today())
sle_1 modified()string coninteger reg
con="string(citas_cit_numero) like '"+ sle_1.text+"%'"
dw_consulta
Sle_2
Sle_1
Sle_3
ddlb_1
ddlb_2
em_1
cb_1
8/18/2019 Gestion de Clinicas
24/28
LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”
Ing. Wagner Bances Puémape 24
reg=dw_consulta.find(con,1,dw_consulta.rowcount())if reg=0 then
messagebox("Sistema de Gestión de Clínica","Consulta no Registrada")else
dw_consulta.scrolltorow(reg)dw_consulta.SetRowFocusIndicator(hand!)
end if
pb_adicionar click()integer numero
SELECT MAX(cit_numero)INTO :numeroFROM citas;
estado=1
IF ISNULL(numero) THEN numero=0numero = numero + 1tab_1.tabpage_1.sle_2.text=string(numero)tab_1.tabpage_1.sle_2.enabled=truetab_1.tabpage_1.sle_3.enabled=true
tab_1.tabpage_1.ddlb_1.enabled=truetab_1.tabpage_1.ddlb_2.enabled=truetab_1.tabpage_1.em_1.enabled=true
pb_borrar.enabled=falsepb_modificar.enabled=falsepb_grabar.enabled=truepb_Cancelar.enabled=true
pb_modificar click()pb_adicionar.enabled=falsepb_grabar.enabled=truepb_borrar.enabled=false
pb_Cancelar.enabled=true
estado=0
integer cod_cit,cod_pac,cod_con,n,cod_hisdate fechastring con_nom,pac_nom,pac_apelong row
row = dw_consulta.getrow()cod_cit=dw_consulta.GetItemNumber(row,"citas_cit_numero")cod_con=dw_consulta.GetItemNumber(row,"consultorio_con_numero")cod_pac=dw_consulta.GetItemNumber(row,"paciente_pac_numero")cod_his=dw_consulta.GetItemNumber(row,"citas_his_numero")
con_nom=dw_consulta.GetItemString(row,"consultorio_con_descripcion")pac_ape=dw_consulta.GetItemString(row,"paciente_pac_apellido")pac_nom=dw_consulta.GetItemString(row,"paciente_pac_nombre")fecha=dw_consulta.GetItemDate(row,"citas_cit_fecha")
tab_1.tabpage_1.sle_2.enabled=truetab_1.tabpage_1.sle_3.enabled=truetab_1.tabpage_1.ddlb_1.enabled=true
tab_1.tabpage_1.ddlb_2.enabled=truetab_1.tabpage_1.em_1.enabled=true
8/18/2019 Gestion de Clinicas
25/28
LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”
Ing. Wagner Bances Puémape 25
tab_1.tabpage_1.sle_2.text=string(cod_cit)tab_1.tabpage_1.sle_3.text=string(cod_his)tab_1.tabpage_1.em_1.text=string(fecha)
tab_1.tabpage_1.ddlb_1.text=(string(cod_pac)+" "+pac_ape+", "+pac_nom)tab_1.tabpage_1.ddlb_2.text=(string(cod_con)+" "+con_nom)tab_1.tabpage_1.ddlb_1.enabled=false
pb_grabar click()integer a,numero,posicion,longitud,cod_pac,cod_con,his_clistring consultorio,paciente,turno,nom,apedate fecha
numero=integer(tab_1.tabpage_1.sle_2.text)paciente=tab_1.tabpage_1.ddlb_1.textconsultorio=tab_1.tabpage_1.ddlb_2.textfecha=date(tab_1.tabpage_1.em_1.text)his_cli=integer(tab_1.tabpage_1.sle_3.text)
longitud=len(consultorio)posicion=pos(consultorio,' ',1)cod_con=integer(mid(consultorio,1,posicion - 1))
longitud=len(paciente)posicion=pos(paciente,' ',1)cod_pac=integer(mid(paciente,1,posicion - 1))
if estado=1 thena=messagebox("Sistema de Gestión de Clínica"," ¿Datos Corectos? ",Question!,YesNo!)
if a = 1 thenINSERT INTO citas( cit_numero,his_numero,pac_numero,con_numero,cit_fecha )VALUES (:numero,:his_cli,:cod_pac,:cod_con,:fecha );
insert into det_cita(cit_numero)values(:numero);
if sqlca.sqlcode 0 thenMessagebox("Sistema de Gesti ón de Clínica","Imposible Grabar, Revise los Datos")else
commit using sqlca;end if
dw_consulta.retrieve()dw_consulta.triggerevent(rowfocuschanged!)
pb_adicionar.enabled=truepb_modificar.enabled=truepb_borrar.enabled=truepb_cancelar.enabled=false
tab_1.tabpage_1.sle_2.text=""tab_1.tabpage_1.sle_2.enabled=falsetab_1.tabpage_1.sle_3.text=""tab_1.tabpage_1.sle_3.enabled=falsetab_1.tabpage_1.ddlb_1.text=""tab_1.tabpage_1.ddlb_1.enabled=falsetab_1.tabpage_1.ddlb_2.text=""
tab_1.tabpage_1.ddlb_2.enabled=falsetab_1.tabpage_1.em_1.text=string(today())
8/18/2019 Gestion de Clinicas
26/28
LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”
Ing. Wagner Bances Puémape 26
tab_1.tabpage_1.em_1.enabled=falseend if
elsea=messagebox("Sistema de Gesti ón de Clínica","Los Datos ha sido Modificados, ¿EstaSeguro? ",Question!,YesNo!)
if a = 1 thenupdate "citas"set "pac_numero" = :cod_pac,"his_numero" = :his_cli,"con_numero" = :cod_con, "cit_fecha" = :fecha
where "citas"."cit_numero" = :numero;
if sqlca.sqlcode 0 thenMessagebox("Sistema de Gestión de Clínica","Imposible Modificar los Datos")else
commit using sqlca;end if
dw_consulta.retrieve()dw_consulta.triggerevent(rowfocuschanged!)
pb_adicionar.enabled=truepb_modificar.enabled=truepb_borrar.enabled=truepb_cancelar.enabled=false
tab_1.tabpage_1.sle_2.text=""tab_1.tabpage_1.sle_2.enabled=falsetab_1.tabpage_1.sle_3.text=""tab_1.tabpage_1.sle_3.enabled=falsetab_1.tabpage_1.ddlb_1.text=""tab_1.tabpage_1.ddlb_1.enabled=falsetab_1.tabpage_1.ddlb_2.text=""tab_1.tabpage_1.ddlb_2.enabled=falsetab_1.tabpage_1.em_1.text=string(today())tab_1.tabpage_1.em_1.enabled=false
end if end if
pb_borrar click()integer b,codlong row
b=messagebox("Sistema de Gesti ón de Clínica"," ¿Desea Eliminar la CitaM édica?",Question!,yesno!)if b =1 then
row = dw_consulta.getrow()cod=dw_consulta.GetItemNumber(row,"citas_cit_numero")
Delete from citas where cit_numero = :cod;
commit using sqlca;
Delete from historial where his_numero = :cod;commit using sqlca;
end if dw_consulta.retrieve()
8/18/2019 Gestion de Clinicas
27/28
LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”
Ing. Wagner Bances Puémape 27
pb_cancelar click()integer num_his
num_his=integer(tab_1.tabpage_1.sle_3.text)if num_his 0 then
delete from historial where his_numero=:num_his;messagebox("Sistema de Gestion de Clínica","La Historia Clinica Generada ha sido
Eliminada")end if
dw_consulta.retrieve()pb_adicionar.enabled=truepb_borrar.enabled=truepb_modificar.enabled=truepb_Cancelar.enabled=false
tab_1.tabpage_1.sle_2.text=""tab_1.tabpage_1.sle_2.enabled=falsetab_1.tabpage_1.sle_3.text=""tab_1.tabpage_1.sle_3.enabled=falsetab_1.tabpage_1.em_1.text=""tab_1.tabpage_1.em_1.enabled=falsetab_1.tabpage_1.ddlb_1.text=""tab_1.tabpage_1.ddlb_1.enabled=falsetab_1.tabpage_1.ddlb_2.text=""tab_1.tabpage_1.ddlb_2.enabled=false
pb_cerrar click()close(w_consulta)
tab_1.tabpage_1.cb_1 click()integer numero
SELECT MAX(his_numero)INTO :numeroFROM historial;
IF ISNULL(numero) THEN numero=0numero = numero + 1tab_1.tabpage_1.sle_3.text=string(numero)
insert into historial(his_numero)values(:numero);if sqlca.sqlcode 0 then
Messagebox("Sistema de Gesti ón de Clínica","La Historia Clínica no se Genero")else
commit using sqlca;Messagebox("Sistema de Gestión de Clínica","Historia Clínica Generada")
end if
tab_1.tabpage_1.ddlb_1 click()integer numero,posicion,longitud,cod_pac,his_cli,codigo,codigo_historiastring paciente
paciente=tab_1.tabpage_1.ddlb_1.text
longitud=len(paciente)posicion=pos(paciente,' ',1)
cod_pac=integer(mid(paciente,1,posicion - 1))
8/18/2019 Gestion de Clinicas
28/28
LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”
select cit_numero,his_numero,pac_numero into :numero,:his_cli,:codigo from citas where pac_numero = :cod_pac;
codigo_historia=his_cli
if codigo_historia=0 thenmessagebox("Sistema de Gestión de Clínica","No tiene Historia Clinica, Generela Por
Favor!")tab_1.tabpage_1.cb_1.setfocus()
elsetab_1.tabpage_1.sle_3.text=string(codigo_historia)
end if
El campo pac_numero de la tabla paciente y el campo con_numero de la tabla consultorio
estar án ocultas en el datawindows
Apellidos y Nombres es un campo calculado.(computed field)
Top Related