En el tutorial de Egostar http://www.delphiacc...-base-de-datos/ respecto a consumir un webservice con acceso a bases de datos, lo he seguido paso a paso (¡¡¡EXCELENTE ESFUERZO Y TUTORIAL!!!) pero al llegar a la parte de "hagámoslo algo productivo", entramos al área peliaguda del desarrollo.
Es ahora que debo hacer algunas pequeñas precisiones respecto a lo escrito por Egostar.
(Utilizo EMS SQL Manager para Firebird y Delphi 2010)
1.- Cuando se hace la creación de la tabla de trabajo (Clientes), el trigger y el generator se crean en el momento que se le asigna al campo CLIENTE_ID la propiedad de ser Autoincrementable. Al menos a mí me dio muchos problemas al momento de insertar datos si no se hace de la manera que recomiendo :$
2.- Les recomiendo encarecidamente revisar los parámetros que se anexan a los SQLDataSet's a utilizar, ya que al menos para el que efectúa la función de borrar registros, le falta añadirle el parámetro ID. Los demás funcionan de maravilla, pero nunca está de más hacer un "double-checking" de todos los parámetros.

3.- En la función FieldsToXml le hace falta un ciclo que recorra el dataset recopilando datos. Una vez que lo insertan, la función crea un archivo XML perfectamente utilizable por el standard SOAP, aún en PHP.