<!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>Disculpe, </FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Ya encontre el problema, era que el array empezaba 
de 0, gracias de todos modos.</FONT></DIV>
<DIV><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:26 PM</DIV>
  <DIV style="FONT: 10pt arial"><B>Subject:</B> Re: Load combobox </DIV>
  <DIV><BR></DIV>
  <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></BLOCKQUOTE></BODY></HTML>