Gracias a todos por sus comentarios, ya lo pude resolver, les comparto la solución por si a alguien más le llegase a pasar.
-------------- Consulta SQL --------------------------
Código SQL
[-]declare @arr_cfd_uuid varchar(max)= :arr_cfd_uuid
select ISNULL(sp.sol_polizaID,'-') as POLIZA, ISNULL(sc.sco_solicitud,'-') as SOLICITUD, cc.cfd_comprobacion as COMPROBACION, cp.cfd_fechaEmision as FECHA_EMISION,
cp.cfd_emisor as A_NOMBRE_DE, cp.cfd_uuid as UUID_INGRESO, cp.cfd_tipoDeComprobante as TIPO_DE_COMPROBANTE, cp.cfd_total as MONTO,
ISNULL (cp.cfd_importePagado, 0) as IMPORTE_PAGADO,
ISNULL(cp.cfd_saldoInsoluto, cp.cfd_total) as SALDO_PENDIENTE, ISNULL(sp.sol_folioContabilizacion,'-') as ENLACE_COI, mpr.emp_descripcion as EMPRESA,
dp.dep_descripcion as DEPARTAMENTO, emp.emp_codigo as CLAVE_USUARIO,
CONCAT (emp.emp_nombre,' ',emp.emp_appaterno,' ', emp.emp_apmaterno) as USUARIO, st.sta_descripcion as ESTATUS, cp.cfd_uuid_pago as UUID_PAGO,
'-' as FECHA_LIMITE
from cfd_pagos cp
join comprobacion_cfd cc
on cp.cfd_uuid = cc.cfd_uuid
left join solicitud_comprobacion sc
on cc.cfd_comprobacion = sc.sco_comprobacion
join comprobacion_gasto cg
on cc.cfd_comprobacion = cg.com_id
join departamentos dp
on cg.com_depto_id = dp.dep_codigo
join usuarios us
on cg.com_usuario = us.usr_codigo
join empleados emp
on us.usr_empleado = emp.emp_codigo
join empresas mpr
on cg.com_emp_id = mpr.emp_id
join r_status st
on cp.cfd_estatus = st.sta_id
left join solicitud_pago sp
on sc.sco_solicitud = sp.sol_id
where cp.cfd_metodoPago = 'PPD' and cc.cfd_estado = 1 and
cp.cfd_uuid in (select convert(varchar(50), value) from string_split(@arr_cfd_uuid, ',') )
union all
select '-' as poliza, '-' as solicitud, '-' as comprobacion, cfd_fechaEmision, cfd_emisor,
cfd_uuid, cfd_tipoDeComprobante, 0 as total, cfd_importePagado as ImportePagado, cfd_saldoInsoluto as saldoInsoluto, '-' as enlaceCOI,
'-' as empresa, '-' as departamento, '-' as clave_usuario, '-' as usuario, sta_descripcion,
cfd_uuid_pago, '-' as fechaLimite
from cfd_pagos
join r_status
on cfd_estatus = sta_id
where cfd_uuid_pago in (select convert(varchar(50), value) from string_split(@arr_cfd_uuid, ',') ) and cfd_tipoDeComprobante = 'P'
order by cfd_uuid_pago
--------------------- Código Delphi ------------------------
Código Delphi
[-]procedure TFConsultAdminPagos.btnRefrescarClick(Sender: TObject);
var
selection, arr_cfd_uuid : String;
begin
MClient.FDMCFDPagosXPPD.First;
while not MClient.FDMCFDPagosXPPD.Eof do
begin
if MClient.FDMCFDPagosXPPDcheck_sta.AsInteger = MOD_ACTIVO then
begin
if arr_cfd_uuid = '' then
begin
arr_cfd_uuid := MClient.FDMCFDPagosXPPDcfd_uuid.AsString;
end
else
begin
arr_cfd_uuid := arr_cfd_uuid + ',' + MClient.FDMCFDPagosXPPDcfd_uuid.AsString;
end;
selection := 'SI';
end
else
begin
if selection <> 'SI' then
begin
selection := 'NO';
end;
end;
MClient.FDMCFDPagosXPPD.Next;
end;
if selection = 'NO' then
begin
msgbox('INFORMACIÓN','No se puede crear el documento debido a que no hay ningún registro seleccionado.',mtInformation,['OK'])
end
else
begin
FDQConsultaExportAdminPagos.Close;
FDQConsultaExportAdminPagos.ParamByName('arr_cfd_uuid').AsString := arr_cfd_uuid;
FDQConsultaExportAdminPagos.Open();
msgbox('INFORMACIÓN','Se realizó la exportación de los registros.',mtInformation,['OK']);
end;
end;
Espero que si alguien tiene el mismo problema, esto le pueda ayudar.
Saludos y muchas gracias a todos por sus respuestas.