en el reporte (supongo qr......pas) has colocado el
use frm......pas ? donde "usas" el formulario donde esta el query?
yo normalmente "armo" una cadena mas o menos de esta manera
Código Delphi
[-]
strSql := 'select Left(M.cuenta, ' + edtDigito.Text + ') As Cuenta,' +
' SUM (Case when DH = ' + QuotedStr('D') + ' then u_IMP else 0.00 End) AS DEBE, ' +
' SUM (Case when DH = ' + QuotedStr('H') + ' then u_IMP else 0.00 End) AS HABER ' +
' from TblMovimientoContable M ' +
' where M.Empresa = ' + QuotedStr(dmGlobal.g_CodigoEmpresa) + ' and M.Periodo = ' + QuotedStr(dmGlobal.g_Periodo) +
' group by Left(M.CUENTA, ' + edtDigito.Text + ') Order by Left(M.CUENTA, ' + edtDigito.Text + ')';
if qrBalanceComprobacionMensual = Nil then
qrBalanceComprobacionMensual := TqrBalanceComprobacionMensual.Create(Nil);
with qrBalanceComprobacionMensual do
begin
qrLabelCompany.Caption := dmGlobal.g_NombreEmpresa;
qrlRuc.Caption := dmGlobal.g_RUCEmpresa;
rSubTitulo.Caption := 'Mensual del mes de ' + NombreMes (StrtoInT (dmGlobal.g_Mes)) + ' - ' + Copy (dmGlobal.g_Periodo,1,4);
begin
qryBalanceComprobacionMensual.Sql.Clear;
qryBalanceComprobacionMensual.SQL.Add(strSql);
qryBalanceComprobacionMensual.Open;
if qryBalanceComprobacionMensual.IsEmpty then
MessageDlg('No existen Movimientos en el mes',mtWarning,[mbRetry],0)
else
preview;
qryBalanceComprobacionMensual.Close;
end
end;
FreeAndNil(qrBalanceComprobacionMensual);
algo asi....
quiza debas poner lineas del codigo tanto del form como del reporte para entender mejor