Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #2  
Antiguo 13-09-2012
Avatar de movorack
[movorack] movorack is offline
Miguel A. Valero
 
Registrado: feb 2007
Ubicación: Bogotá - Colombia
Posts: 1.346
Poder: 22
movorack Va camino a la famamovorack Va camino a la fama
Hola elarys

Lo que puedo entender es que quieres generar un XML a partir de una clase que haz creado.

De casualidad ahorita estoy trabajando en un proyecto donde debo llevar a XML valores de un componente que contiene una o varias TCollection y en algunos casos TCollection dentro de TCollection.

Probé tu solución y si sucede que al llegar a la TCollection no encuentra ninguna información. Leí un poco antes de contestarte y al parecer delphi no sabe exactamente como leer tu TElarysCollection (Me imagino que habrás creado un calse heredada de TCollection) y por eso la salta sin ofrecer ningun resultado. (Si entendí mal agradecería que alguien pueda aclararnos porque no lee el cntenido de la TCollection)

Esto es lo que obtuve al ejecutar tu funcion

Código:
<KplGenPlan>
<CanEjecuciones>0</CanEjecuciones>
<CodDefi>KNMPLDMO</CodDefi>
<CodPlan>KNMPLDMO_PL001</CodPlan>
<CodProg>KNmPldmo</CodProg>
<KplDbConnection>
<KplDbBdeParams>
<Database>
<AliasName>Kactus7</AliasName>
<Connected>True</Connected>
<DatabaseName>DBKactus</DatabaseName>
<DriverName></DriverName>
<Exclusive>False</Exclusive>
<HandleShared>False</HandleShared>
<KeepConnection>True</KeepConnection>
<LoginPrompt>True</LoginPrompt>
<Name>DtbKactus</Name>
<StringList>
</StringList>
<ReadOnly>False</ReadOnly>
<SessionName>Default</SessionName>
<Tag>0</Tag>
<TransIsolation>tiReadCommitted</TransIsolation>
</Database>
<DatabaseName>DBKactus</DatabaseName>
<Driver>KDBDrvOracle</Driver>
<Password>digital</Password>
<ShowLoginForm>True</ShowLoginForm>
<Username>Kactus</Username>
</KplDbBdeParams>
<Connected>True</Connected>
<Name>KplDbConn</Name>
<Tag>0</Tag>
<TipoConnecion>KDtcBDE</TipoConnecion>
</KplDbConnection>
<Estado>kplPlanEstInac</Estado>
<FinalizacionValor>kplFinProgNoValid</FinalizacionValor>
<FormString>FrmNmPldmo</FormString>
<Name>KplGenPlan</Name>
<NombrePlan></NombrePlan>
<KplNotificacion>
<Activo>True</Activo>
<Email>sdasd</Email>
<StringList>
</StringList>
<Titulo>sadasdasd</Titulo>
</KplNotificacion>
<Observacion></Observacion>
<KplProgramacion>
<FechaEjecucion>41182,8333333333</FechaEjecucion>
<FechaFinal>41143,6895889468</FechaFinal>
<FechaInicio>41144</FechaInicio>
<FrecuenciaDiaNum>0</FrecuenciaDiaNum>
<FrecuenciaDiaVar>kplDiaVarUltDiaMes</FrecuenciaDiaVar>
<FrecuenciaTipo>kplFrecTipMensu</FrecuenciaTipo>
<Hora>0,833333333333333</Hora>
<TieneVencimiento>False</TieneVencimiento>
</KplProgramacion>
<Tag>0</Tag>
<VersionProg>12.6.0.5</VersionProg>
<StringList>
</StringList>
</KplGenPlan>
Y esto es lo que obtengo al ejecutar la función para obtener el XML de mi componente.

Código:
<?xml version="1.0" encoding="utf-8"?>
<KPLPLAN>
	<CODPLAN>KNMPLDMO_PL001</CODPLAN>
	<CODDEFI>KNMPLDMO</CODDEFI>
	<CODPROG>KNmPldmo</CODPROG>
	<VERPROG>12.6.0.5</VERPROG>
	<MAINFORM>FrmNmPldmo</MAINFORM>
	<OBSERVACION/>
	<NOTIFICACION>
		<NOTIFUSR>sdasd</NOTIFUSR>
		<NOTIFTIT>sadasdasd</NOTIFTIT>
		<NOTIFMSG>zczxcz xzczczxc zxczxczxczx

</NOTIFMSG>
	</NOTIFICACION>
	<PROGRAMACION>
		<FECHAS>
			<FECINIC>23/08/2012</FECINIC>
			<FECFINA>%NOVENC</FECFINA>
		</FECHAS>
		<HORA>08:00:00 p.m.</HORA>
		<FRECUENCIA>
			<FRECTIP>%MENSU</FRECTIP>
			<FRECDIA>%ULTDIAMES</FRECDIA>
		</FRECUENCIA>
	</PROGRAMACION>
	<EJECUCION>
		<PARAMETROS>
			<PARAMETRO PARTYPE="%CTRL" PARORDN="1" LABEL="Archivo" OWNER="FrmNmPldmo" OBJREF="EdtFileName" OBJTIP="TEdit">
				<OPCIONES>
					<OPCION LABEL="Texto" PROPTIP="" PROPTIP="Text">C:\Garh\NM\Wrk\KNmPldmo.txt</OPCION>
				</OPCIONES>
			</PARAMETRO>
			<PARAMETRO PARTYPE="%CONS" PARORDN="2" LABEL="Consulta" OWNER="DtmNmPldmo" OBJREF="Qry" OBJTIP="TQuery">
				<OPCIONES>
					<OPCION LABEL="SQL" PROPTIP="" PROPTIP="SQL.Text">SELECT * FROM TABLA</OPCION>
				</OPCIONES>
			</PARAMETRO>
			<PARAMETRO PARTYPE="%ACCN" PARORDN="3" LABEL="Aceptar" OWNER="FrmNmPldmo" OBJREF="BitBtnAceptaClick" OBJTIP="TNotifyEvent"/>
		</PARAMETROS>
	</EJECUCION>
</KPLPLAN>
En mi XML tengo un nodo que se llama PARAMETROS y es aquí donde llevo el contenido de las TCollection (Tres. Una para controles, una para acciones y otra para consultas) que en el resultado obtenido con tu función no lo encuentro.

En conclusión porque he dado mucha lora. Sea que quieras generar un XML o no. Lo que te recomiendo es que analices desde dentro de la clase y generes desde allí mismo el resultado que quieres. con una función no tan automatizada y que en determinado momento pueda evaluar tipos de datos internos, variables privadas, etc...

Pos si te es de utilidad, hice las pruebas con Delphi 5
__________________
Buena caza y buen remar... http://mivaler.blogspot.com
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Casteo y Migración maunix Varios 6 26-09-2011 16:46:29
Crear un TCollection kloud C++ Builder 2 04-04-2006 13:52:54
Casteo en tiempo de ejecución moesis OOP 4 21-07-2005 15:21:56
Herencia y Casteo PeLuCa OOP 9 05-04-2005 01:29:15
TCollection Igna OOP 2 24-06-2003 12:24:14


La franja horaria es GMT +2. Ahora son las 03:11:51.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi