Ayuda

Ayuda

Postby Aitue » Sun Apr 13, 2008 6:08 pm

Amigos:

El pasar a 32 bits, ha sido bastante complicado, pues la metodologia de clipper difiere de Fwh.

Necesito saber si puedo mostrar en pantalla con un recurso de Workshop, la informacion de un registro y segun el usuario necesite, permitir que pueda modificar.

Pienso usar Say para mostrar y luego un Get, pero tengo la duda como realizarlo, sobre la misma definicion del recurso.

Espero haberme expresado bien, ya que necesito realizar este cambio muy urgente.

Saludos,
Rafael.

Fwh, xHabour 1.1.0, Workshop, Verce.
Aitue
 
Posts: 14
Joined: Tue Apr 08, 2008 9:17 pm

Postby Antonio Linares » Sun Apr 13, 2008 6:36 pm

Rafael,

El mismo código de Clipper con FiveWin, tiene que servirte con FWH.

Muéstranos aqui como lo haces (PRG) y te indicamos como se hace en FWH (que debe ser igual).
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42160
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby Aitue » Mon Apr 14, 2008 12:35 am

Antonio:

Muchas gracias por responder.

Esto es lo que hago en Clipper, y quiero saber si puedo aplicar el mismo esquema, pero en Fwh. Se que quizas molesto demaciado, pero soy un principiante con esta herramienta tan famosa.

Saludos,

Rafael.

*** CODIGO


@ 5,27 get cod_usu5 pict '@!' color color28
read
seek cod_usu5

if eof()
*** DATO NUEVO
stor spac(40) to des_equ1
stor spac(10) to cod_equ1
stor spac(20) to nro_ser1
stor spac(12) to rut_cli1
stor 0 to nro_hab1,per_man1,nro_con1

else
*** YA EXISTE Y MUESTRA
cod_equ1=cod_equ
rut_cli1=rut_cli
des_equ1=des_equ
nro_hab1=nro_hab
per_man1=per_man
nro_con1=nro_con
setcolor(color28)
@ 7,27 say trim(cod_equ) pict '@!'
@ 9,27 say trim(des_equ) pict '@!'
@ 11,27 say nro_hab pict '999999'
@ 13,27 say per_man pict '99'
@ 15,27 say nro_con pict '9999999999'
@ 17,27 say rut_cli
@ 19,27 say trim(a->nom_cli)
set colo to
cor=1
cor:=ale(" MODIFICA DATOS , SI , NO , ")
endif
cor=1
if cor=1
*** AGREGA O MODIFICA
@ 7,27 get cod_equ1 pict '@!' color color28
@ 9,27 get des_equ1 pict '@!' color color28
@ 11,27 get nro_hab1 pict '999999' color color28
@ 13,27 get per_man1 pict '99' color color28
@ 15,27 get nro_con1 pict '9999999999' color color28
@ 17,27 get rut_cli pict '!!!!!!!!!!!!'
read
cor=1
cor:=ale(" INGRESE OPCION , GRABA , MODIFICA , ")
@ 24,20 say spac(58)
endif
if cor=1
** GRABA
endif
Aitue
 
Posts: 14
Joined: Tue Apr 08, 2008 9:17 pm

Postby joseluisysturiz » Mon Apr 14, 2008 3:31 am

Aca te dejo un pequeño ejemplo, cualquier duda avisas... igual peudes bajar un manual basico desde UTILERIAS....

#include "FiveWin.ch"

MEMVAR oBARPPAL, oREPORT, oDLGACCESO, oCOMBOBOX, oWPPAL, oWHIJAS, oCURMANO, rBMP, rDLL, lARCHIVOS,;
lPRINT, nMENU, lAPPEND, lORIGEN, nRECNO, nTOP, cTitulo, dDesde, dHasta, nMEMO

FUNCTION clasicli(lORIGEN) // MAESTRO CLASIFICACION CLIENTES
local oDlgClaCli, oLbxClaCli, oDbfClaCli,;
oGetBuscar, cBuscar,;
oCmbClaCli, aCmbIndice := {"Código", "Nombre"}, nIndice := 1,;
oBtnInc, oBtnCon, oBtnMod, oBtnEli, oBtnSel, oBtnImp, oBtnSalir

DEFINE DIALOG oDlgClaCli RESOURCE "MAESTRO" OF oWppal;
TITLE " CUENTAS POR COBRAR - Maestro Clasificación Clientes"

DBSELECTAREA("jlclicla"); jlclicla->(OrdSetFocus(nIndice)); jlclicla->(DBGOTOP())
DATABASE oDbfClaCli; oDbfClaCli:GoTop(); oDbfClaCli:Blank(); nRecno := RecNo()

REDEFINE LISTBOX oLbxClaCli;
FIELDS jlclicla->&(FIELDNAME(1)), jlclicla->&(FIELDNAME(2));
ID 109;
FIELDSIZES 80, 150;
HEADERS " Código", " Nombre Clasificación";
ON RIGHT CLICK msginfo("Mostrar Menu POPUP");
ON DBLCLICK (IIF(lORIGEN, oDlgClaCli:END(), dataclacli(.F., oDlgClaCli, oDbfClaCli, oLbxClaCli)));
WHEN (RecCount() > 0 ) UPDATE OF oDlgClaCli

oLbxClaCli:GoTop(); oLbxClaCli:REFRESH()

REDEFINE BTNBMP oBtnInc ID 106 OF oDlgClaCli NOBORDER; // INCLUIR
ACTION (dataclacli(.T., oDlgClaCli, oDbfClaCli, oLbxClaCli));
PROMPT "Incluir"// FILE rBmp+"floppy.bmp"

REDEFINE BTNBMP oBtnCon ID 107 OF oDlgClaCli NOBORDER; // MODIFICAR
ACTION (dataclacli(.F., oDlgClaCli, oDbfClaCli, oLbxClaCli));
PROMPT "Modificar"; //FILE rBmp+"floppy.bmp"
WHEN (RecCount() > 0 )

REDEFINE BTNBMP oBtnMod ID 108 OF oDlgClaCli NOBORDER; // CONSULTAR
ACTION (msginfo("Que quieres Saber?"));
PROMPT "Consultar"; //FILE rBmp+"floppy.bmp"
WHEN (RecCount() > 0 )

REDEFINE BTNBMP oBtnEli ID 110 OF oDlgClaCli NOBORDER; // ELIMINAR
ACTION (delrecord(oLbxClaCli, ,"jlclicla"));
PROMPT "Eliminar"; //FILE rBmp+"floppy.bmp"
WHEN (RecCount() > 0 )

REDEFINE BTNBMP oBtnSel ID 112 OF oDlgClaCli NOBORDER; // SELECCIONAR
ACTION (msginfo("Seleccionar"));
PROMPT "Selecionar"; //FILE rBmp+"floppy.bmp"
WHEN (RecCount() > 0 )

REDEFINE BTNBMP oBtnImp ID 113 OF oDlgClaCli NOBORDER; // IMPRIMIR
ACTION (oLbxClaCli:REPORT());
PROMPT "Imprimir"; //FILE rBmp+"floppy.bmp"
WHEN (RecCount() > 0 )

REDEFINE BTNBMP oBtnSalir ID 114 OF oDlgClaCli NOBORDER; // SALIR
ACTION (oDlgClaCli:END());
FILE rBmp+"salidaP1.bmp", rBmp+"salidaP2.bmp"


REDEFINE COMBOBOX oCmbClaCli VAR nIndice; // COMBO-BOX
ITEMS aCmbIndice;
ON CHANGE (OrdSetFocus(nIndice), jlclicla->(DBGOTOP()),;
oLbxClaCli:REFRESH(), oLbxClaCli:SetFocus());
WHEN (RecCount() > 0 ) UPDATE;
ID 105 OF oDlgClaCli

REDEFINE GET oGETBuscar VAR cBuscar ID 111 PICTURE "@!"; // GET BUSCAR
VALID(buscar(cBuscar, oLbxClaCli, OrdSetFocus(nIndice)));
WHEN (RecCount() > 0 );
OF oDlgClaCli

*** Solo ToolTips
oLbxClaCli:cTooltip := 'Botón Derecho para Opciones'
oBtnInc:cTooltip := 'Incluir Registro'
oBtnCon:cTooltip := 'Modificar Registro'
oBtnMod:cTooltip := 'Consultar Registro'
oBtnEli:cTooltip := 'Eliminar Registro'
oBtnSel:cTooltip := 'Selecionar Registro'
oBtnImp:cTooltip := 'Imprimir Los Registros'
oBtnSalir:cTooltip := 'Retorna al Menu Principal'
oCmbClaCli:cTooltip := 'Seleccione para Ordenar Datos'
oGETBuscar:cTooltip := 'Introduzca para Buscar según Ordenado'

ACTIVATE DIALOG oDlgClaCli CENTER

* aRetorno := {jlemple->mpl_codigo, jlemple->mpl_nombre}
* IF lORIGEN // CONTROLA SI ES LLAMADO DESDE OTRA PATALLA
* RETURN (aRetorno)
* ENDIF

RETURN NIL // FIN MAESTRO CLASIFICACION CLIENTES


FUNCTION dataclacli(lAPPEND, oDlg, oDbf, oLbx) // FICHA CLASIFICACION CLIENTE

local oGET1, oGET2, oDlgDatCC, oBtnAce, oBtnSalir, oBtnAnt, oBtnSig,;
cAPPEND := "Nuevo"

IF !lAPPEND
cAPPEND := "Modificar"
oDbf:LOAD() // TRAE LOS CAMPOS PARA MODIFICAR
ELSE
oDbf:BLANK()
ENDIF

DEFINE DIALOG oDlgDatCC RESOURCE "DAT_MAESTRO" OF oDlg;
TITLE oDlg:cCaption+" - "+cAPPEND

REDEFINE GET oGET1 VAR oDbf:ccl_codigo ID 103 OF oDlgDatCC PICTURE "@!";
VALID(novacio(oDbf:ccl_codigo), vcodigo(oDbf:ccl_codigo, lAPPEND));
WHEN(lAPPEND) UPDATE

REDEFINE GET oGET2 VAR oDbf:ccl_nombre ID 104 OF oDlgDatCC;
VALID(novacio(oDbf:ccl_nombre));
WHEN(!EMPTY(oDbf:ccl_codigo)) UPDATE


REDEFINE BTNBMP oBtnAnt ID 107 OF oDlgDatCC NOBORDER; // ANTERIOR
ACTION (oLbx:GoUp(),;
oDbf:LOAD(),;
oGET1:REFRESH(),;
oGET2:REFRESH(),;
oLbx:REFRESH());
FILE rBmp+"anteP.bmp" UPDATE;
WHEN (!lAPPEND)

REDEFINE BTNBMP oBtnSig ID 108 OF oDlgDatCC NOBORDER; // SIGUIENTE
ACTION (oLbx:GoDown(),;
oDbf:LOAD(),;
oGET1:REFRESH(),;
oGET2:REFRESH(),;
oLbx:REFRESH());
FILE rBmp+"sigueP.bmp" UPDATE;
WHEN (!lAPPEND)


REDEFINE BUTTON oBtnAce ID 105 OF oDlgDatCC; // BOTON ACEPTAR
ACTION (graba(oDbf, oLbx, lAPPEND, "jlclicla", , ), oDlgDatCC:END());
PROMPT IIF(lAPPEND, "Agregar", "Actualizar"); //FILE rBmp+"grabarP.bmp";
WHEN (!EMPTY(oDbf:ccl_nombre)) UPDATE

REDEFINE BUTTON oBtnSalir ID 106 OF oDlgDatCC;// NOBORDER; // BOTON CANCELAR
ACTION (oDlgDatCC:END());//FILE rBmp+"salidaP1.bmp", rBmp+"salidaP2.bmp";
CANCEL

*** Solo ToolTips
oBtnAce:cTooltip := 'Haga Click para Grabar'
oBtnSalir:cTooltip := 'Haga Click para Salir'

ACTIVATE DIALOG oDlgDatCC CENTER

RETURN NIL // FIN FICHA CLASIFICACION CLIENTE
Dios no está muerto...

Gracias a mi Dios ante todo!
User avatar
joseluisysturiz
 
Posts: 2064
Joined: Fri Jan 06, 2006 9:28 pm
Location: Guatire - Caracas - Venezuela

Postby Antonio Linares » Mon Apr 14, 2008 5:56 am

Aitue,

READ no se usa ni en FW ni en FWH.
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42160
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby Aitue » Mon Apr 14, 2008 6:56 pm

Antonio:

Hola, te mostre como lo hago en Clipper, no en Fw, es por esto que uso READ, mi duda es como puedo hacer lo mismo en FWH.

Jose Luis, te agradesco tu ayuda, veo, todo se inia desde un Browse, pero por politicas de la empresa, la informacion no puede estar a disposicion de los digitadores, por lo que debo hacer los siguiente:
1. Pedir que digite CODIGO:
2. Revisar la base que exista: Si existe, mostrar en pantalla y dar la posibilidad de modificar, de lo contrario, Agregar registro, tal como se muestra en el codigo de Clipper.

Todo lo que he leido y visto de Fwh, parten desde un browse, tal como tu me lo has indicado.

A lo mejor lo que necesito hacer, no me lo permitr Fwh, pero me gustaria tener la claridad.


Saludos,

Rafael
Aitue
 
Posts: 14
Joined: Tue Apr 08, 2008 9:17 pm

Postby joseluisysturiz » Tue Apr 15, 2008 4:10 am

Aitue, no es que parta de un browse, solo que uno lo usa como un maestro de visualizacion, lo que tu quieres hacer se hace tan facil en FWH como en CLIPPER, solo obvia el browse y listo, diseña tu ventana con los datos que deseas solicitar y listo, enviame a mi privado lo que deseas hacer y te envio para que tengas una idea de como hacerlo en FWH, como te dije, solo obvia el BROWSE y ya. A la orden para ayudarte, como te dije busca el manual de FWH en las utilierias. Saludos.
Dios no está muerto...

Gracias a mi Dios ante todo!
User avatar
joseluisysturiz
 
Posts: 2064
Joined: Fri Jan 06, 2006 9:28 pm
Location: Guatire - Caracas - Venezuela

Postby Aitue » Tue Apr 15, 2008 9:38 pm

Jose Luis:

Gracias por tu ayuda, te envie algo a tu correo personal.

Saludos,
Rafael


joseluisysturiz wrote:Aitue, no es que parta de un browse, solo que uno lo usa como un maestro de visualizacion, lo que tu quieres hacer se hace tan facil en FWH como en CLIPPER, solo obvia el browse y listo, diseña tu ventana con los datos que deseas solicitar y listo, enviame a mi privado lo que deseas hacer y te envio para que tengas una idea de como hacerlo en FWH, como te dije, solo obvia el BROWSE y ya. A la orden para ayudarte, como te dije busca el manual de FWH en las utilierias. Saludos.
Aitue
 
Posts: 14
Joined: Tue Apr 08, 2008 9:17 pm


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot] and 59 guests