powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Как вставить sysdate в XML?
4 сообщений из 4, страница 1 из 1
Как вставить sysdate в XML?
    #35354172
tata08
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Помогите, пожалуйста! Как вставить системную дату в XML файл. Есть сводная таблица по входящим и исходящим накладным.Для налоговой надо передавать отчет в виде XML, структура задана:
<?xml version="1.0" encoding="windows-1251" ?>
- <DECLAR xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="J0215101.XSD">
- <DECLARHEAD>
<TIN>01241261</TIN>
<C_DOC>J02</C_DOC>
<C_DOC_SUB>151</C_DOC_SUB>
<C_DOC_VER>1</C_DOC_VER>
<C_DOC_TYPE>0</C_DOC_TYPE>
<C_DOC_CNT>12</C_DOC_CNT>
<C_REG>20</C_REG>
<C_RAJ>1</C_RAJ>
<PERIOD_MONTH>5</PERIOD_MONTH>
<PERIOD_TYPE>1</PERIOD_TYPE>
<PERIOD_YEAR>2008</PERIOD_YEAR>
<C_DOC_STAN>1</C_DOC_STAN>
<D_FILL>20052008</D_FILL>
<SOFTWARE />
</DECLARHEAD>
- <DECLARBODY>
<HZ>1</HZ>
<HZY>2008</HZY>
<HZM>04</HZM>
<HZYP xsi:nil="true" />
<HNAME>ВАТ "УЮТ"</HNAME>
<HTINJ>01241261</HTINJ>
<HDDGVSD xsi:nil="true" />
<HNDGVSD xsi:nil="true" />
<HNPDV>01241261019</HNPDV>
<HNSPDV>27649759</HNSPDV>
<T1RXXXXG2 ROWNUM="1">033589820019</T1RXXXXG2>
<T1RXXXXG2 ROWNUM="2">336409720012</T1RXXXXG2>
<T1RXXXXG2 ROWNUM="3">335499126571</T1RXXXXG2>
<T1RXXXXG2 xsi:nil="true" ROWNUM="4" />
<T1RXXXXG2 xsi:nil="true" ROWNUM="5" />
<T1RXXXXG2 xsi:nil="true" ROWNUM="6" />
<T1RXXXXG2 xsi:nil="true" ROWNUM="7" />
<T1RXXXXG2 xsi:nil="true" ROWNUM="8" />
<T1RXXXXG2 xsi:nil="true" ROWNUM="9" />
<T1RXXXXG2 xsi:nil="true" ROWNUM="10" />
<T1RXXXXG2 xsi:nil="true" ROWNUM="11" />
<T1RXXXXG3 ROWNUM="1">567.48</T1RXXXXG3>
<T1RXXXXG3 ROWNUM="2">77251090.68</T1RXXXXG3>
<T1RXXXXG3 ROWNUM="3">28666666.67</T1RXXXXG3>
<T1RXXXXG2 xsi:nil="true" ROWNUM="4" />
<T1RXXXXG2 xsi:nil="true" ROWNUM="5" />
<T1RXXXXG2 xsi:nil="true" ROWNUM="6" />
<T1RXXXXG2 xsi:nil="true" ROWNUM="7" />
<T1RXXXXG2 xsi:nil="true" ROWNUM="8" />
<T1RXXXXG2 xsi:nil="true" ROWNUM="9" />
<T1RXXXXG2 xsi:nil="true" ROWNUM="10" />
<T1RXXXXG2 xsi:nil="true" ROWNUM="11" />
<T1RXXXXG4 ROWNUM="1">113.50</T1RXXXXG4>
<T1RXXXXG4 ROWNUM="2">15450218.14</T1RXXXXG4>
<T1RXXXXG4 ROWNUM="3">5733333.33</T1RXXXXG4>
<T1RXXXXG4 ROWNUM="4">0.00</T1RXXXXG4>
<T1RXXXXG4 ROWNUM="5">0.00</T1RXXXXG4>
<T1RXXXXG4 ROWNUM="6">0.00</T1RXXXXG4>
<T1RXXXXG4 ROWNUM="7">0.00</T1RXXXXG4>
<T1RXXXXG4 ROWNUM="8">0.00</T1RXXXXG4>
<T1RXXXXG4 ROWNUM="9">0.00</T1RXXXXG4>
<T1RXXXXG4 ROWNUM="10">0.00</T1RXXXXG4>
<T1RXXXXG4 ROWNUM="11">0.00</T1RXXXXG4>
<R01G3>67591.00</R01G3>
<R01G4>13518.00</R01G4>
<R02G3>116926236</R02G3>
<R02G4>23385247</R02G4>
<R03G3 xsi:nil="true" />
<R03G4>0.00</R03G4>
<R04G3>116208781.00</R04G3>
<R04G4>23241756.00</R04G4>
<T2RXXXXG2 ROWNUM="1">325609404637</T2RXXXXG2>
<T2RXXXXG2 ROWNUM="2">320326320374</T2RXXXXG2>
<T2RXXXXG2 ROWNUM="3">320326320374</T2RXXXXG2>
<T2RXXXXG2 ROWNUM="4">334103620308</T2RXXXXG2>
<T2RXXXXG2 ROWNUM="5">327571705666</T2RXXXXG2>
<T2RXXXXG2 xsi:nil="true" ROWNUM="6" />
<T2RXXXXG2 xsi:nil="true" ROWNUM="7" />
<T2RXXXXG2 xsi:nil="true" ROWNUM="8" />
<T2RXXXXG2 xsi:nil="true" ROWNUM="9" />
<T2RXXXXG2 xsi:nil="true" ROWNUM="10" />
<T2RXXXXG3A ROWNUM="1">4</T2RXXXXG3A>
<T2RXXXXG3A ROWNUM="2">4</T2RXXXXG3A>
<T2RXXXXG3A ROWNUM="3">3</T2RXXXXG3A>
<T2RXXXXG3A ROWNUM="4">3</T2RXXXXG3A>
<T2RXXXXG3A ROWNUM="5">4</T2RXXXXG3A>
<T2RXXXXG2 xsi:nil="true" ROWNUM="6" />
<T2RXXXXG2 xsi:nil="true" ROWNUM="7" />
<T2RXXXXG2 xsi:nil="true" ROWNUM="8" />
<T2RXXXXG2 xsi:nil="true" ROWNUM="9" />
<T2RXXXXG2 xsi:nil="true" ROWNUM="10" />
<T2RXXXXG3B ROWNUM="1">2008</T2RXXXXG3B>
<T2RXXXXG3B ROWNUM="2">2008</T2RXXXXG3B>
<T2RXXXXG3B ROWNUM="3">2008</T2RXXXXG3B>
<T2RXXXXG3B ROWNUM="4">2008</T2RXXXXG3B>
<T2RXXXXG3B ROWNUM="5">2008</T2RXXXXG3B>
<T2RXXXXG2 xsi:nil="true" ROWNUM="6" />
<T2RXXXXG2 xsi:nil="true" ROWNUM="7" />
<T2RXXXXG2 xsi:nil="true" ROWNUM="8" />
<T2RXXXXG2 xsi:nil="true" ROWNUM="9" />
<T2RXXXXG2 xsi:nil="true" ROWNUM="10" />
<T2RXXXXG4 ROWNUM="1">17801.70</T2RXXXXG4>
<T2RXXXXG4 ROWNUM="2">1597.74</T2RXXXXG4>
<T2RXXXXG4 ROWNUM="3">15957.86</T2RXXXXG4>
<T2RXXXXG4 ROWNUM="4">1333.33</T2RXXXXG4>
<T2RXXXXG4 ROWNUM="5">630514.17</T2RXXXXG4>
<T2RXXXXG2 xsi:nil="true" ROWNUM="6" />
<T2RXXXXG2 xsi:nil="true" ROWNUM="7" />
<T2RXXXXG2 xsi:nil="true" ROWNUM="8" />
<T2RXXXXG2 xsi:nil="true" ROWNUM="9" />
<T2RXXXXG2 xsi:nil="true" ROWNUM="10" />
<T2RXXXXG5 ROWNUM="1">3560.34</T2RXXXXG5>
<T2RXXXXG5 ROWNUM="2">319.55</T2RXXXXG5>
<T2RXXXXG5 ROWNUM="3">3191.57</T2RXXXXG5>
<T2RXXXXG5 ROWNUM="4">266.67</T2RXXXXG5>
<T2RXXXXG5 ROWNUM="5">126102.83</T2RXXXXG5>
<T2RXXXXG5 ROWNUM="6">0.00</T2RXXXXG5>
<T2RXXXXG5 ROWNUM="7">0.00</T2RXXXXG5>
<T2RXXXXG5 ROWNUM="8">0.00</T2RXXXXG5>
<T2RXXXXG5 ROWNUM="9">0.00</T2RXXXXG5>
<T2RXXXXG5 ROWNUM="10">0.00</T2RXXXXG5>
<R05G4>120241410</R05G4>
<R05G5>24048282</R05G5>
<R06G4>1868043.00</R06G4>
<R06G5>373609.00</R06G5>
<R07G4 xsi:nil="true" />
<R07G5>0.00</R07G5>
<T3RXXXXG2 xsi:nil="true" ROWNUM="1" />
<T3RXXXXG3A xsi:nil="true" ROWNUM="1" />
<T3RXXXXG3B xsi:nil="true" ROWNUM="1" />
<T3RXXXXG4 xsi:nil="true" ROWNUM="1" />
<T3RXXXXG5 ROWNUM="1">0.00</T3RXXXXG5>
<R08G4>0</R08G4>
<R08G5>0</R08G5>
<HFILL>05052008</HFILL>
<HBOS>Попов Олександр Семенович</HBOS>
<HBUH>Пунина Тетяна Василівна</HBUH>
</DECLARBODY>
- <!-- YOUR_ID="59019"
-->
</DECLAR>


в процке есть входные параматры date1 и date2 - по ним формируется отчетный период, MM,YY,SYS_D надо вставить в <DECLARHEAD> . Фрагмент процедуры:

begin
dat:=sysdate;
MM:=to_char(date1,'mm');
YY:=to_char(date1,'yyyy');
SYS_D:=to_char(dat,'DDMMYYYY');

delete test_xsl_nalog;

insert into test_xsl_nalog values (
XMLTYPE.createXML(
'<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >
<xsl:output indent="no"/>
<xsl:output method="xml" version="1.0" encoding="UTF-8" omit-xml-declaration="no"/>
<xsl:template match="/">
<xsl:processing-instruction name="xml"> version="1.0" encoding="windows-1251"</xsl:processing-instruction>'||
'
<DECLAR xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="J0215101.XSD">
<DECLARHEAD>

<xsl:attribute name="TIN">01241261</xsl:attribute>
<xsl:attribute name="C_DOC">J02</xsl:attribute>
<xsl:attribute name="C_DOC_SUB">151</xsl:attribute>
<xsl:attribute name="C_DOC_VER">1</xsl:attribute>
<xsl:attribute name="C_DOC_TYPE">0</xsl:attribute>
<xsl:attribute name="C_DOC_CNT">1</xsl:attribute>
<xsl:attribute name="C_REG">20</xsl:attribute>
<xsl:attribute name="C_RAJ">1</xsl:attribute>
<xsl:attribute name="PERIOD_MONTH">MM</xsl:attribute>
<xsl:attribute name="PERIOD_TYPE">1</xsl:attribute>
<xsl:attribute name="PERIOD_YEAR">YY</xsl:attribute>
<xsl:attribute name="C_DOC_STAN">1</xsl:attribute>
<xsl:attribute name="D_FILL">SYS_D</xsl:attribute>
</DECLARHEAD>

<DECLARBODY>
<xsl:attribute name="HZ"><xsl:value-of select="1"/></xsl:attribute>
<xsl:attribute name="HZY"><xsl:value-of select="YY"/></xsl:attribute>
<xsl:attribute name="HZM"><xsl:value-of select="MM"/></xsl:attribute>
<xsl:attribute name="HZYP">xsi:nil="true"</xsl:attribute>
<xsl:attribute name="HNAME">ВАТ "УЮТ"</xsl:attribute>
<xsl:attribute name="HTINJ">01241261</xsl:attribute>
<xsl:attribute name="HDDGVSD">xsl:nil="true"</xsl:attribute>
<xsl:attribute name="HNDGVSD">xsl:nil="true"</xsl:attribute>
<xsl:attribute name="HNPDV">01241261019</xsl:attribute>
<xsl:attribute name="HNSPDV">27649759></xsl:attribute>
<xsl:for-each select="ROWSET/ROW">
<T1RXXXXG2>
<xsl:value-of select="T_INDN"/>
<xsl:attribute name="ROWNUM"><xsl:value-of select="NN"/></xsl:attribute>
</T1RXXXXG2>
</xsl:for-each>
<xsl:for-each select="ROWSET/ROW">
<T1RXXXXG3>
<xsl:value-of select="T_SUM_WITHOUT_NDS"/>
<xsl:attribute name="ROWNUM"><xsl:value-of select="NN"/></xsl:attribute>
</T1RXXXXG3>
</xsl:for-each>
<xsl:for-each select="ROWSET/ROW">
<T1RXXXXG4>
<xsl:value-of select="T_SUM_NDS"/>
<xsl:attribute name="ROWNUM"><xsl:value-of select="NN"/></xsl:attribute>
</T1RXXXXG4>
</xsl:for-each>
</DECLARBODY>

</DECLAR>


</xsl:template>
</xsl:stylesheet>'));

commit;
...
Рейтинг: 0 / 0
Как вставить sysdate в XML?
    #35354542
GARBAGE
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если я вас правельно понял?!!!
тогда так
<idoc_ctime>
<xsl:value-of
select="concat(
substring($XXX/CREDAT, 1, 4), '-',
substring($XXX/CREDAT, 5, 2), '-',
substring($XXX/CREDAT, 7, 2))"/>
<!-- <xsl:value-of select="../../../EDI_DC40/CREDAT"/> -->
</idoc_ctime>
...
Рейтинг: 0 / 0
Как вставить sysdate в XML?
    #35354623
tata08
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Простите, я только начинаю работать в PL/SQL c XML. Не понимаю, что значит <idoc_ctime>
($XXX/CREDAT, 1, 4), и
<!-- <xsl:value-of select="../../../EDI_DC40/CREDAT"/> -->
...
Рейтинг: 0 / 0
Как вставить sysdate в XML?
    #35354630
tata08
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Простите, я только начинаю работать в PL/SQL c XML. Не понимаю, что значит
($XXX/CREDAT, 1, 4), и
<!-- <xsl:value-of select="../../../EDI_DC40/CREDAT"/> -->
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Как вставить sysdate в XML?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]