Sunteți pe pagina 1din 28

LEP IV Power Builder

Instituto Superior Tecnolgico ABACO

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!

Ing. Wagner Bances Pumape

LEP IV Power Builder

Instituto Superior Tecnolgico ABACO

Picture Button

dw_especialidad_1

dw_especialidad
Botones de Navegacin

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_especialidad
itemfocuschanged()
pb_borrar.enabled=true
tab_1.tabpage_1.dw_especialidad_1.scrolltorow(dw_especialidad.getrow())
Botones de Navegaci n
Cb_1(|<)
click()
tab_1.tabpage_1.dw_especialidad_1.scrolltorow(1)
cb_1.enabled=false
cb_2.enabled=false
cb_3.enabled=true
cb_4.enabled=trae
cb_2(<)
click()
long nfilas
nfilas=tab_1.tabpage_1.dw_especialidad_1.getrow()
if nfilas>1 then
tab_1.tabpage_1.dw_especialidad_1.ScrollPriorRow()
cb_1.enabled=true
cb_2.enabled=true
cb_3.enabled=true
cb_4.enabled=true
else
cb_1.enabled=false
cb_2.enabled=false
end if

Ing. Wagner Bances Pumape

LEP IV Power Builder

Instituto Superior Tecnolgico ABACO

cb_3(>)
click()
long nfilas,ntotalfilas
ntotalfilas=tab_1.tabpage_1.dw_especialidad_1.rowcount()
nfilas=tab_1.tabpage_1.dw_especialidad_1.getrow()
if nfilas < ntotalfilas then
tab_1.tabpage_1.dw_especialidad_1.ScrollNextRow()
cb_1.enabled=true
cb_2.enabled=true
cb_3.enabled=true
cb_4.enabled=true
else
cb_3.enabled=false
cb_4.enabled=false
end if
cb_4(>|)
click()
long nfilas
nfilas=tab_1.tabpage_1.dw_especialidad_1.RowCount()
tab_1.tabpage_1.dw_especialidad_1.ScrolltoRow(nfilas)
cb_1.enabled=true
cb_2.enabled=true
cb_3.enabled=false
cb_4.enabled=false
Picture Botton
Pb_adicionar(a adir) click()
tab_1.tabpage_1.dw_especialidad_1.enabled = true
integer n, numero
dw_especialidad.enabled = false
SELECT MAX(esp_numero)
INTO :numero
FROM especialidad;
IF ISNULL(numero) THEN numero=0
numero = 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=false
pb_borrar.enabled=false
pb_modificar.enabled=false
pb_Cancelar.enabled=trae
pb_modificar
click()
tab_1.tabpage_1.dw_especialidad_1.enabled=true
tab_1.tabpage_1.dw_especialidad_1.setfocus()
pb_adicionar.enabled=false
pb_borrar.enabled=false
Pb_Cancelar.enabled=trae

Ing. Wagner Bances Pumape

LEP IV Power Builder

Instituto Superior Tecnolgico ABACO

Pb_grabar
Click()
integer a,b
a=messagebox("Sistema de Gesti n de Clnica"," Datos Corectos?,Question!,YesNo!)
if a = 1 then
b=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=true
pb_modificar.enabled=true
pb_borrar.enabled=true
pb_cancelar.enabled=false
tab_1.tabpage_1.dw_especialidad_1.enabled=false
end if
dw_especialidad.enabled = true
dw_especialidad.triggerevent(rowfocuschanged!)
pb_borrar
click()
integer fila,b
fila=messagebox("Sistema
de
Gesti n
de
Clnica"," Desea
Eliminar
Registro?",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()

el

pb_cancelar
click()
tab_1.tabpage_1.dw_especialidad_1.enabled=false
tab_1.tabpage_1.dw_especialidad_1.retrieve()
dw_especialidad.enabled = true
pb_adicionar.enabled=true
pb_borrar.enabled=true
pb_modificar.enabled=true
pb_Cancelar.enabled=false
pb_cerrar
click()
close(w_especialidad)
sle_1.text
modified()
string esp
integer reg
esp="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 Clnica","No Existe esta Especialidad")
else
dw_especialidad.scrolltorow(reg)
dw_especialidad.SetRowFocusIndicator(hand!)
end if

Ing. Wagner Bances Pumape

LEP IV Power Builder

Instituto Superior Tecnolgico ABACO

Tabla Seleccionada (Especialidad)

DataWindow Especialidad(Vista)

Ing. Wagner Bances Pumape

LEP IV Power Builder

Instituto Superior Tecnolgico ABACO

DataWindow Especialidad_1(Edici n)

Ing. Wagner Bances Pumape

LEP IV Power Builder

Instituto Superior Tecnolgico ABACO

Picture Button

dw_paciente

dw_paciente_1

w_paciente
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=true
tab_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 = true
integer n,numero
dw_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

Ing. Wagner Bances Pumape

LEP IV Power Builder

Instituto Superior Tecnolgico ABACO

pb_borrar.enabled=false
pb_modificar.enabled=false
pb_Cancelar.enabled=true
pb_modificar
click()
tab_1.tabpage_1.dw_paciente_1.enabled=true
tab_1.tabpage_1.dw_paciente_1.setfocus()
pb_adicionar.enabled=false
pb_borrar.enabled=false
pb_Cancelar.enabled=true
Pb_grabar
Click()
integer a,b
a=messagebox("Sistema de Gesti n de Clnica"," Datos Corectos? ",Question!,YesNo!)
if a = 1 then
b=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=true
pb_modificar.enabled=true
pb_borrar.enabled=true
pb_cancelar.enabled=false
tab_1.tabpage_1.dw_paciente_1.enabled=false
end if
dw_paciente.enabled = true
dw_paciente.triggerevent(rowfocuschanged!)
pb_borrar
click()
integer fila,b
fila=messagebox("Sistema de Gesti n de Clnica"," Desea Eliminar el
Registro?",Question!,yesno!)
if fila =1 then
dw_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 = true
pb_adicionar.enabled=true
pb_borrar.enabled=true
pb_modificar.enabled=true
pb_Cancelar.enabled=false
pb_cerrar
close(w_paciente)

click()

Ing. Wagner Bances Pumape

LEP IV Power Builder

sle_1.text
string pac
integer reg

Instituto Superior Tecnolgico ABACO

modified()

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 Clnica","Paciente no Registrado")
else
dw_paciente.scrolltorow(reg)
dw_paciente.SetRowFocusIndicator(hand!)
end if

Ing. Wagner Bances Pumape

LEP IV Power Builder

Instituto Superior Tecnolgico ABACO

Tabla Seleccionada (Paciente)

DataWindow Paciente(Vista)

Ing. Wagner Bances Pumape

10

LEP IV Power Builder

Instituto Superior Tecnolgico ABACO

DataWindow Paciente(Edici n)

Ing. Wagner Bances Pumape

11

LEP IV Power Builder

Instituto Superior Tecnolgico ABACO

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=true
tab_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 = true
integer n,numero
dw_doctor.enabled = false
SELECT MAX(doc_numero)
INTO :numero
FROM doctor;
IF ISNULL(numero) THEN numero=0
numero = numero + 1
n=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=false
pb_modificar.enabled=false
pb_Cancelar.enabled=trae

Ing. Wagner Bances Pumape

12

LEP IV Power Builder

Instituto Superior Tecnolgico ABACO

pb_modificar
click()
tab_1.tabpage_1.dw_doctor_1.enabled=true
tab_1.tabpage_1.dw_doctor_1.setfocus()
pb_adicionar.enabled=false
pb_borrar.enabled=false
pb_Cancelar.enabled=true
Pb_grabar
Click()
integer a,b
a=messagebox("Sistema de Gesti n de Clnica"," 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=true
pb_modificar.enabled=true
pb_borrar.enabled=true
pb_cancelar.enabled=false
tab_1.tabpage_1.dw_doctor_1.enabled=false
end if
dw_doctor.enabled = true
dw_doctor.triggerevent(rowfocuschanged!)
pb_borrar
integer fila,b

click()

fila=messagebox("Sistema
de
Gesti n
de
Clnica"," Desea
Registro?",Question!,yesno!)
if fila =1 then
dw_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()

Eliminar

el

pb_cancelar
click()
tab_1.tabpage_1.dw_doctor_1.enabled=false
tab_1.tabpage_1.dw_doctor_1.retrieve()
dw_doctor.enabled = true
pb_adicionar.enabled=true
pb_borrar.enabled=true
pb_modificar.enabled=true
pb_Cancelar.enabled=false
pb_cerrar
close(w_doctor)

click()

Ing. Wagner Bances Pumape

13

LEP IV Power Builder

sle_1.text
string doc
integer reg

Instituto Superior Tecnolgico ABACO

modified()

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 Clnica","Doctor no Registrado")
else
dw_doctor.scrolltorow(reg)
dw_doctor.SetRowFocusIndicator(hand!)
end if

Ing. Wagner Bances Pumape

14

LEP IV Power Builder

Instituto Superior Tecnolgico ABACO

Tabla Seleccionada (Doctor)

DataWindow Doctor(Vista)

Ing. Wagner Bances Pumape

15

LEP IV Power Builder

Instituto Superior Tecnolgico ABACO

DataWindow para el DropDownDW del DataWindow Doctor_1

Eliminar las cabeceras y el campo esp_numero, solamente quedando el campo


esp_descripcion

DataWindow Doctor(Edici n)

Ing. Wagner Bances Pumape

16

LEP IV Power Builder

Instituto Superior Tecnolgico ABACO

Style Type DropDrowDW (esp_numero)

Style Type Drop DrowListBox (doc_estado)

Ing. Wagner Bances Pumape

17

LEP IV Power Builder

Instituto Superior Tecnolgico ABACO

PROGRAMACION DE PROGRAMAS MEDICOS

Sle_1

dw_programacion

em_1

Sle_2
ddlb_1
ddlb_2

em_2
ddlb_3

Declare Global Variables


integer estado,codigo,his_num
w_pogramacion
open()
dw_programacion.settransobject(sqlca)
dw_programacion.retrieve()
string a,b
integer num
estado=0
Declare nombres Cursor for select doc_numero, doc_nombre,doc_apellido
from 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;
Loop
Close 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;
Loop
Close con;
tab_1.tabpage_1.em_1.text=string(today())

Ing. Wagner Bances Pumape

18

LEP IV Power Builder

Instituto Superior Tecnolgico ABACO

dw_programacion
pb_borrar.enabled=true

rowfocuschanged()

Pb_adicionar
integer numero

click()

SELECT MAX(pro_numero)
INTO :numero
FROM programacion;
estado=1
IF ISNULL(numero) THEN numero=0
numero = numero + 1
tab_1.tabpage_1.sle_2.text=string(numero)
tab_1.tabpage_1.sle_2.enabled=true
tab_1.tabpage_1.ddlb_1.enabled=true
tab_1.tabpage_1.ddlb_2.enabled=true
tab_1.tabpage_1.ddlb_3.enabled=true
tab_1.tabpage_1.em_1.enabled=true
tab_1.tabpage_1.em_2.enabled=true
pb_borrar.enabled=false
pb_modificar.enabled=false
pb_grabar.enabled=true
pb_Cancelar.enabled=true
pb_modificar
pb_adicionar.enabled=false
pb_grabar.enabled=true
pb_borrar.enabled=false
pb_Cancelar.enabled=true

click()

estado=0
integer cod_pro,cod_doc,cod_con,citas,n
date fecha
string turno,con_nom,doc_nom,doc_ape
long 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=true
tab_1.tabpage_1.ddlb_2.enabled=true
tab_1.tabpage_1.ddlb_3.enabled=true
tab_1.tabpage_1.em_1.enabled=true
tab_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)

Ing. Wagner Bances Pumape

19

LEP IV Power Builder

Instituto Superior Tecnolgico ABACO

tab_1.tabpage_1.em_2.text=string(citas)
tab_1.tabpage_1.ddlb_1.text=(string(cod_con)+" "+con_nom)
tab_1.tabpage_1.ddlb_2.text=(string(cod_doc)+" "+doc_ape+", "+doc_nom)
tab_1.tabpage_1.ddlb_3.text=turno
pb_grabar
click()
integer a,numero,citas,posicion,longitud,cod_doc,cod_con
string consultorio,doctor,turno,nom,ape
date fecha
numero=integer(tab_1.tabpage_1.sle_2.text)
consultorio=tab_1.tabpage_1.ddlb_1.text
doctor=tab_1.tabpage_1.ddlb_2.text
fecha=date(tab_1.tabpage_1.em_1.text)
citas=integer(tab_1.tabpage_1.em_2.text)
turno=tab_1.tabpage_1.ddlb_3.text
longitud=len(consultorio)
posicion=pos(consultorio,' ',1)
cod_con=integer(mid(consultorio,1,posicion - 1))
longitud=len(doctor)
posicion=pos(doctor,' ',1)
cod_doc=integer(mid(doctor,1,posicion - 1))
if estado=1 then
a=messagebox("Sistema
",Question!,YesNo!)
if a = 1 then

de

Gesti n

de

Clnica"," Datos

Corectos?

insert into programacion


values(:numero,:cod_con,:cod_doc,:fecha,:citas,:turno);
if sqlca.sqlcode <> 0 then
Messagebox("Sistema de Gesti n de Clnica","Imposible Grabar,
Revise los Datos")
else
commit using sqlca;
end if
dw_programacion.retrieve()
dw_programacion.triggerevent(rowfocuschanged!)
pb_adicionar.enabled=true
pb_modificar.enabled=true
pb_borrar.enabled=true
pb_cancelar.enabled=false
tab_1.tabpage_1.sle_2.text=""
tab_1.tabpage_1.sle_2.enabled=false
tab_1.tabpage_1.ddlb_1.text=""
tab_1.tabpage_1.ddlb_1.enabled=false
tab_1.tabpage_1.ddlb_2.text=""
tab_1.tabpage_1.ddlb_2.enabled=false
tab_1.tabpage_1.ddlb_3.text=""
tab_1.tabpage_1.ddlb_3.enabled=false
tab_1.tabpage_1.em_1.text=string(today())
tab_1.tabpage_1.em_1.enabled=false
tab_1.tabpage_1.em_2.text=""

Ing. Wagner Bances Pumape

20

LEP IV Power Builder

Instituto Superior Tecnolgico ABACO

tab_1.tabpage_1.em_2.enabled=false
end if
else
a=messagebox("Sistema de Gesti n de Clnica","Los Datos ha sido Modificados, Esta
Seguro? ",Question!,YesNo!)
if a = 1 then
update "programacion"
set "con_numero" = :cod_con,"doc_numero" = :cod_doc,
"pro_fecha" = :fecha,"pro_ncitas" = :citas,
"pro_turno" = :turno
where "programacion"."pro_numero" = :numero;
if sqlca.sqlcode <> 0 then
Messagebox("Sistema de Gesti n de Clnica","Imposible Modificar los
Datos")
else
commit using sqlca;
end if
dw_programacion.retrieve()
dw_programacion.triggerevent(rowfocuschanged!)
pb_adicionar.enabled=true
pb_modificar.enabled=true
pb_borrar.enabled=true
pb_cancelar.enabled=false
tab_1.tabpage_1.sle_2.text=""
tab_1.tabpage_1.sle_2.enabled=false
tab_1.tabpage_1.ddlb_1.text=""
tab_1.tabpage_1.ddlb_1.enabled=false
tab_1.tabpage_1.ddlb_2.text=""
tab_1.tabpage_1.ddlb_2.enabled=false
tab_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=false
tab_1.tabpage_1.em_2.text=""
tab_1.tabpage_1.em_2.enabled=false
end if
end if
pb_borrar
integer fila,b,codigo
long row

click()

fila=messagebox("Sistema
de
Gesti n
de
Clnica"," Desea
Eliminar
Registro?",Question!,yesno!)
if fila =1 then
row = dw_programacion.getrow()
codigo=dw_programacion.GetItemNumber(row,"programacion_pro_numero")

el

Delete from programacion where pro_numero = :codigo;


commit using sqlca;
end if
dw_programacion.retrieve()

Ing. Wagner Bances Pumape

21

LEP IV Power Builder

Instituto Superior Tecnolgico ABACO

pb_cancelar
dw_programacion.retrieve()
pb_adicionar.enabled=true
pb_borrar.enabled=true
pb_modificar.enabled=true
pb_Cancelar.enabled=false

click()

pb_cerrar
close(w_programacion)

click()

sle_1
string doc
integer reg

modified()

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 Clnica","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, estos
son:
doctor_doc_numero,
consultorio_con_numero,
consultorio_con_descripcion,
doctor_doc_nombre, doctor_doc_apellido.

Apellidos y Nombres es un campo calculado.(computed field)

Ing. Wagner Bances Pumape

22

LEP IV Power Builder

Instituto Superior Tecnolgico ABACO

GENERACION DE CITAS M DICAS

Sle_1

dw_consulta

Sle_2

Sle_3

cb_1

ddlb_1

em_1

ddlb_2

w_consulta
open()
dw_consulta.settransobject(sqlca)
dw_consulta.retrieve()
string a,b
integer num
Declare nombres Cursor for select pac_numero, pac_nombre,pac_apellido
from 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;
Loop
Close 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_2.additem(string(num)+" "+a)
Fetch con into :num,:a;
Loop
Close con;
tab_1.tabpage_1.em_1.text=string(today())
sle_1
string con
integer reg

modified()

con="string(citas_cit_numero) like '"+ sle_1.text+"%'"

Ing. Wagner Bances Pumape

23

LEP IV Power Builder

Instituto Superior Tecnolgico ABACO

reg=dw_consulta.find(con,1,dw_consulta.rowcount())
if reg=0 then
messagebox("Sistema de Gesti n de Clnica","Consulta no Registrada")
else
dw_consulta.scrolltorow(reg)
dw_consulta.SetRowFocusIndicator(hand!)
end if
pb_adicionar
integer numero

click()

SELECT MAX(cit_numero)
INTO :numero
FROM citas;
estado=1
IF ISNULL(numero) THEN numero=0
numero = numero + 1
tab_1.tabpage_1.sle_2.text=string(numero)
tab_1.tabpage_1.sle_2.enabled=true
tab_1.tabpage_1.sle_3.enabled=true
tab_1.tabpage_1.ddlb_1.enabled=true
tab_1.tabpage_1.ddlb_2.enabled=true
tab_1.tabpage_1.em_1.enabled=true
pb_borrar.enabled=false
pb_modificar.enabled=false
pb_grabar.enabled=true
pb_Cancelar.enabled=true
pb_modificar
click()
pb_adicionar.enabled=false
pb_grabar.enabled=true
pb_borrar.enabled=false
pb_Cancelar.enabled=true
estado=0
integer cod_cit,cod_pac,cod_con,n,cod_his
date fecha
string con_nom,pac_nom,pac_ape
long 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=true
tab_1.tabpage_1.sle_3.enabled=true
tab_1.tabpage_1.ddlb_1.enabled=true
tab_1.tabpage_1.ddlb_2.enabled=true
tab_1.tabpage_1.em_1.enabled=true

Ing. Wagner Bances Pumape

24

LEP IV Power Builder

Instituto Superior Tecnolgico ABACO

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_cli
string consultorio,paciente,turno,nom,ape
date fecha
numero=integer(tab_1.tabpage_1.sle_2.text)
paciente=tab_1.tabpage_1.ddlb_1.text
consultorio=tab_1.tabpage_1.ddlb_2.text
fecha=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 then
a=messagebox("Sistema de Gesti n de Clnica"," Datos Corectos? ",Question!,YesNo!)
if a = 1 then
INSERT 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 then
Messagebox("Sistema de Gesti n de Clnica","Imposible Grabar, Revise los Datos")
else
commit using sqlca;
end if
dw_consulta.retrieve()
dw_consulta.triggerevent(rowfocuschanged!)
pb_adicionar.enabled=true
pb_modificar.enabled=true
pb_borrar.enabled=true
pb_cancelar.enabled=false
tab_1.tabpage_1.sle_2.text=""
tab_1.tabpage_1.sle_2.enabled=false
tab_1.tabpage_1.sle_3.text=""
tab_1.tabpage_1.sle_3.enabled=false
tab_1.tabpage_1.ddlb_1.text=""
tab_1.tabpage_1.ddlb_1.enabled=false
tab_1.tabpage_1.ddlb_2.text=""
tab_1.tabpage_1.ddlb_2.enabled=false
tab_1.tabpage_1.em_1.text=string(today())

Ing. Wagner Bances Pumape

25

LEP IV Power Builder

Instituto Superior Tecnolgico ABACO

tab_1.tabpage_1.em_1.enabled=false
end if
else
a=messagebox("Sistema de Gesti n de Clnica","Los Datos ha sido Modificados, Esta
Seguro? ",Question!,YesNo!)
if a = 1 then
update "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 then
Messagebox("Sistema de Gesti n de Clnica","Imposible Modificar los Datos")
else
commit using sqlca;
end if
dw_consulta.retrieve()
dw_consulta.triggerevent(rowfocuschanged!)
pb_adicionar.enabled=true
pb_modificar.enabled=true
pb_borrar.enabled=true
pb_cancelar.enabled=false
tab_1.tabpage_1.sle_2.text=""
tab_1.tabpage_1.sle_2.enabled=false
tab_1.tabpage_1.sle_3.text=""
tab_1.tabpage_1.sle_3.enabled=false
tab_1.tabpage_1.ddlb_1.text=""
tab_1.tabpage_1.ddlb_1.enabled=false
tab_1.tabpage_1.ddlb_2.text=""
tab_1.tabpage_1.ddlb_2.enabled=false
tab_1.tabpage_1.em_1.text=string(today())
tab_1.tabpage_1.em_1.enabled=false
end if
end if
pb_borrar
integer b,cod
long row

click()

b=messagebox("Sistema
de
Gesti n
de
Clnica"," Desea
M dica?",Question!,yesno!)
if b =1 then
row = dw_consulta.getrow()
cod=dw_consulta.GetItemNumber(row,"citas_cit_numero")

Eliminar

la

Cita

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()

Ing. Wagner Bances Pumape

26

LEP IV Power Builder

pb_cancelar
integer num_his

Instituto Superior Tecnolgico ABACO

click()

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 Clnica","La Historia Clinica Generada ha sido
Eliminada")
end if
dw_consulta.retrieve()
pb_adicionar.enabled=true
pb_borrar.enabled=true
pb_modificar.enabled=true
pb_Cancelar.enabled=false
tab_1.tabpage_1.sle_2.text=""
tab_1.tabpage_1.sle_2.enabled=false
tab_1.tabpage_1.sle_3.text=""
tab_1.tabpage_1.sle_3.enabled=false
tab_1.tabpage_1.em_1.text=""
tab_1.tabpage_1.em_1.enabled=false
tab_1.tabpage_1.ddlb_1.text=""
tab_1.tabpage_1.ddlb_1.enabled=false
tab_1.tabpage_1.ddlb_2.text=""
tab_1.tabpage_1.ddlb_2.enabled=false
pb_cerrar
close(w_consulta)

click()

tab_1.tabpage_1.cb_1
integer numero

click()

SELECT MAX(his_numero)
INTO :numero
FROM historial;
IF ISNULL(numero) THEN numero=0
numero = numero + 1
tab_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 Clnica","La Historia Clnica no se Genero")
else
commit using sqlca;
Messagebox("Sistema de Gesti n de Clnica","Historia Clnica Generada")
end if
tab_1.tabpage_1.ddlb_1
click()
integer numero,posicion,longitud,cod_pac,his_cli,codigo,codigo_historia
string paciente
paciente=tab_1.tabpage_1.ddlb_1.text
longitud=len(paciente)
posicion=pos(paciente,' ',1)
cod_pac=integer(mid(paciente,1,posicion - 1))

Ing. Wagner Bances Pumape

27

LEP IV Power Builder

Instituto Superior Tecnolgico 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 then
messagebox("Sistema de Gesti n de Clnica","No tiene Historia Clinica, Generela Por
Favor!")
tab_1.tabpage_1.cb_1.setfocus()
else
tab_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)

Ing. Wagner Bances Pumape

28

S-ar putea să vă placă și