Ver Mensaje Individual
  #1  
Antiguo 22-07-2008
Avatar de richy08
richy08 richy08 is offline
Miembro
 
Registrado: may 2007
Ubicación: Bucerias, Nayarit Mexico
Posts: 529
Reputación: 18
richy08 Va por buen camino
Modificar el record selection de crystal en tiempo de ejecucion

Buenos dias compañeros estoy tratando de modificar en tiempo de ejecucion la propiedad record selection de un reporte de crystal la idea es generar una cadena como esta

{QUOTEdetail.nquantity}>0 and {QUOTEdetail.sItemID}<>'Engineering'
and {QUOTEdetail.sItemID}<>'INTERCON' and ({Quotemaster.nQuoteID}=166 or {Quotemaster.nQuoteID}=99 or {Quotemaster.nQuoteID}=81 or {Quotemaster.nQuoteID}=191 or {Quotemaster.nQuoteID}=111
or {Quotemaster.nQuoteID}=109 or {Quotemaster.nQuoteID}=167)

donde los numeros los obtengo de lo que seleccione el usuario de un dbgrid. el codigo que usos es el siguiente pero lo n ose que es lo que esta mal en el

Código Delphi [-]
procedure TFrm_Proforma.BitBtn6Click(Sender: TObject);
var
 i,seleccion:Integer;
begin
 i:=0;
// formula:='';
 Seleccion:=DBGrid1.SelectedRows.Count;
 if (seleccion>1) then
 begin
  Shopping.DiscardSavedData;
  Shopping.Refresh;
  Shopping.WindowState:=wsmaximized;
  Shopping.ReportName:='C:\Program Files\SitiSystems\SmartQuote\DetProZeusVarNquo.rpt';
  Shopping.ReportTitle:='Multi Shopping List: ';
  Shopping.Selection.Formula.Clear;
  Shopping.Selection.Formula.Add('{QUOTEdetail.nquantity}>0 and {QUOTEdetail.sItemID}<>''Engineering'' and {QUOTEdetail.sItemID}<>''INTERCON'' and (');
  While ido
  begin
      Shopping.Selection.Formula.Add('{Quotemaster.nQuoteID}="'+inttostr(DBGrid1.Fields[0].Value)+'"');
      i:=i+1;
  end;
  Shopping.Selection.Formula.Add(')');
  Shopping.show;
  end;
end;

por el momento solo esoty seleccionando un id para ver com ose forma la cadena, alguna idea mil gracias
Responder Con Cita