Combobox

General Help regarding HMG, Compilation, Linking, Samples

Moderator: Rathinagiri

Post Reply
Mario Mansilla
Posts: 269
Joined: Wed Aug 13, 2008 2:35 pm
Location: Córdoba - Argentina

Combobox

Post by Mario Mansilla »

Hola amigos :
Es posible modificar el siguiente ejemplo para que realize lo siguiente :

1 - la variable aEmpleado almacene los campos codigo y nombre por separado
2 - el combobox solo muestre el campo nombre
3 - una vez seleccionado el combobox mostrar el campo codigo correspondiente

El ejemplo debe ser realizado con arrays ya que necesito dejar obtener vacio el combobox para : main.combo_1.Value := 0

Saludos
Mario Mansilla

Hello friends :
                    You can modify the following example to do the following:

1 - the variable aEmpleado stores the code and name fields separately
2 - the combobox only shows the name field
3 - once selected the combobox display the corresponding code field

The example must be done with arrays since I need to let the combobox get empty for: main.combo_1.Value: = 0

regards
Mario Mansilla
Attachments
Combo3.rar
(1.67 KiB) Downloaded 203 times
martingz
Posts: 395
Joined: Wed Nov 18, 2009 11:14 pm
Location: Mexico

Re: Combobox

Post by martingz »

Mario yo lo hago de la siguiente manera, lleno dos arrays uno conteniendo toda la informacion y el otro mostrando solo el nombre , este array es el que coloco en el combo, como ambos estan sincronizados, pues devueleves el numero soalmente, espero te sea de ayuda

#include <hmg.ch>

Function Main

public aEmpleado := {},aEmpleado1 := {}
Select 1
Use Empleado
Go Top

Do While !Eof()
aadd ( aEmpleado , {Empleado->Codigo,Empleado->Nombre} )
aadd ( aEmpleado1 , Empleado->Nombre )
Empleado->(DbSkip(1))
Enddo

Load Window Main
Main.Center
Main.Activate

Return

*------------
Procedure Abrir
*------------
Use Empleado
Go Top

Return

*---------------
Procedure Mostrar
*---------------

MsgInfo(aempleado[main.Combo_1.Value,1])

Return

*-------------
Procedure Cerrar
*-------------
Close Empleado

Return
User avatar
andyglezl
Posts: 1461
Joined: Fri Oct 26, 2012 7:58 pm
Location: Guadalajara Jalisco, MX
Contact:

Re: Combobox

Post by andyglezl »

Bueno, hay diferentes formas, aquí está otra...

Code: Select all

#include <hmg.ch>

Function Main

  Public aEmpleado := {}
  Select 1
  Use Empleado 
  Go Top

  DbEval( { | | aAdd(aEmpleado, PADR( Empleado->Nombre, 25, " ") + Empleado->Codigo ) } )

  Load Window Main
  Main.Center
  Main.Activate

Return

*------------
Procedure Abrir
*------------
Use Empleado 
Go Top

Return

*---------------
Procedure Mostrar
*---------------

MsgInfo( Substr( Main.Combo_1.DisplayValue, 26, 4 ) )

Return
*-------------
Procedure Cerrar
*-------------
Close Empleado

Return
Andrés González López
Desde Guadalajara, Jalisco. México.
Mario Mansilla
Posts: 269
Joined: Wed Aug 13, 2008 2:35 pm
Location: Córdoba - Argentina

Re: Combobox

Post by Mario Mansilla »

Hola amigos :
muchas gracias por sus repuestas , pude implementar con exito ambas soluciones .
Saludos
Mario Rafael Mansilla

Hello friends: thank you very much for your answers, you can successfully implement both solutions.
regards
Mario Rafael Mansilla
Post Reply