Ok pruebo esto , de todas formas lo del formulario lo tengo en un try , me deberia saltar y no lo he visto saltar ninguna vez.
Código Delphi
[-]
try
Application.CreateForm (TfrmUnidadesPedidoVenta, frmUnidadesPedidoVenta);
frmUnidadesPedidoVenta.CarregaDades(Cantidad,UnitatsServidesBD);
frmUnidadesPedidoVenta.ShowModal;
varDades := frmUnidadesPedidoVenta.rebreDades;
varUnitatsRestants := frmUnidadesPedidoVenta.rebreUnitatsRestants;
frmUnidadesPedidoVenta.Free;
except
on e : exception do begin
ShowMessage ('Clase de error: ' + e.ClassName + chr(13) + chr(13) + 'Mensaje del error: ' + e.Message);
end;
end;