<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=utf-8">
<META content="MSHTML 6.00.6000.16850" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2>Solo para aclarar, creo un array porque se ha 
establecido que la tabla empresa no llegara a un maximo de 10 
items.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Por tanto no tendre problema en trabajarlo a nivel 
de array.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>FG</FONT></DIV>
<BLOCKQUOTE dir=ltr 
style="PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
  <DIV style="FONT: 10pt arial">----- Original Message ----- </DIV>
  <DIV 
  style="BACKGROUND: #e4e4e4; FONT: 10pt arial; font-color: black"><B>From:</B> 
  <A title=fredyg1965@gmail.com href="mailto:fredyg1965@gmail.com">Fredy 
  Gonzales</A> </DIV>
  <DIV style="FONT: 10pt arial"><B>To:</B> <A 
  title=lazarus-es@lists.lazarus.freepascal.org 
  href="mailto:lazarus-es@lists.lazarus.freepascal.org">Spanish version of 
  Lazarus List</A> </DIV>
  <DIV style="FONT: 10pt arial"><B>Sent:</B> Monday, June 15, 2009 5:20 PM</DIV>
  <DIV style="FONT: 10pt arial"><B>Subject:</B> Load combobox </DIV>
  <DIV><BR></DIV>
  <DIV><FONT face=Arial size=2>Amigos,</FONT></DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2>Estoy trabajando un programa sencillo, pero me he 
  trancado en un problema con el combobox.</FONT></DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2>Estoy cargando un combobox con data, alli coloco 
  la descripcion y tambien creo un array global al formulario donde guardo el id 
  de la data.</FONT></DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2>Digamos algo asi</FONT></DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2>var<BR>  TxtQuery: String;<BR>  nCont: 
  Integer;<BR>begin<BR>  TxtQuery:='Select emp_id,emp_razsoc from 
  empresa';<BR>  DataModule1.lstempresa.SQL.Text:=TxtQuery;<BR>  
  DataModule1.lstempresa.Open;<BR>  cboempresa.Items.Clear;<BR>  if 
  DataModule1.lstempresa.RecordCount >0 then<BR>     
  begin<BR>        SetLength(aItems, 
  DataModule1.lstempresa.RecordCount 
  );<BR>        
  nCont:=1;<BR>        while Not 
  DataModule1.lstempresa.EOF Do<BR>        
  begin<BR>            
  cboempresa.Items.Add(DataModule1.lstempresa.FieldByName('emp_razsoc').AsString);<BR>            
  <STRONG>aItems[nCont]:=DataModule1.lstempresa.FieldByName('emp_id').AsString;  
  //array creado para guardar el ID de 
  empresa.<BR></STRONG>            
  DataModule1.lstempresa.Next;<BR>            
  nCont:=nCont + 1;<BR>        
  end;<BR>     end;<BR>  
  DataModule1.lstempresa.Close;   </FONT></DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2><STRONG>Hasta alli todo OK, el punto esta cuando 
  realizo la sinconizacion Combobox + Array desde el evento OnChange del 
  combobox.</STRONG></FONT></DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2>if (cboempresa.ItemIndex>0) 
  then<BR> begin<BR>    
  DataModule1.lstcencosto.Close;<BR>    
  DataModule1.lstcencosto.Params.ParamByName('ID').AsString:= 
  aItems[cboempresa.ItemIndex];<BR>    
  DataModule1.lstcencosto.Open;<BR>    
  DataModule1.lstcencosto.Refresh;</FONT></DIV>
  <DIV><FONT face=Arial size=2>   // monitor de 
  valores<BR>    stdato.caption:=aItems[cboempresa.ItemIndex] 
  ;<BR> end;     </FONT></DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2>Como veran este me refresca otro DataSet con 
  informacion x empresa, pero el combobox no se ubica en la posicion que deberia 
  ser, siempre se salta un registro.Por tanto, el codigo de empresa no siempre 
  es el real.</FONT></DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2>Es problema de logica o no debi usa el 
  evento OnChange si no otro ?.</FONT></DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2>No uso el DBCombobox ni el DBLookupCombox  
  porque no despliegan la lista, asi que estoy usando algo que siempre usaba en 
  VB6.</FONT></DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2>Saludos.</FONT></DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2>FG</FONT></DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV>
  <DIV><FONT face=Arial size=2></FONT> </DIV></BLOCKQUOTE></BODY></HTML>