dudo que sea el TStringList y te voy a decir por que:
Yo almaceno en una instancia de este objeto el XML que me genera un proceso, Este Xml me ha llegado a ocupar hasta 15,000 líneas y cuando lo paso al Sp no me corta la información.
Yo uso Delphi 7 y SqlServer
El código que uso es el siguiente:
Código Delphi
[-]
Function TdmCrgImagenes.CreaParametros(Var PAdpProcAlm: TADOStoredProc; PsNomSp: String): String;
Begin
Result := 'Nada';
Try
PAdpProcAlm.Close;
With PAdpProcAlm.Parameters Do
Begin
Clear;
If PsNomSp = 'TiendaVirtual.Dbo.TDV001SpSUIDGenRevImgTiendaVirtual' Then
Begin
CreateParameter('@PVMenu',ftString,pdInput,25,'');
CreateParameter('@PTXmlImg',ftMemo,pdInput,0,'');
CreateParameter('@PVUsuario',ftString,pdInput,15,'');
CreateParameter('@PMensaje',ftString,pdOutput,250,'');
End;
End;
Except
On Error: Exception Do
Result := 'Ocurrió un error al crear los parámetros necesarios para la ' +
'ejecución del procedimiento almacenado. Error: ' + Error.Message + '. Por favor ' +
'notifique al admonistrador';
End;
End;
Function TdmCrgImagenes.CargaXmlImagenes(PStlXmlImg: TStringList): String;
Begin
Result := 'Nada';
Try
AdpImgCarga.Close;
AdpImgCarga.ProcedureName := 'TiendaVirtual.Dbo.TDV001SpSUIDGenRevImgTiendaVirtual';
Result := CreaParametros(AdpImgCarga,AdpImgCarga.ProcedureName);
If Result = 'Nada' Then
With AdpImgCarga.Parameters Do
Begin
ParamByName('@PVMenu').Value := 'CargaTmpImagenes';
ParamByName('@PTXmlImg').Value := PStlXmlImg.Text;
AdpImgCarga.ExecProc;
Result := ParamByName('@PMensaje').Value;
end;
Except
On Error: Exception do
Result := 'Ocurrió un error al realizar la carga de imágenes a la tabla temporal. ' +
'Error: ' + Error.Message + '. Por favor notifique al administrador';
End;
End;