Доброго времени суток уважаемые форумчане!
Прошу помощи в реализации следующей задачи: Необходимо сформировать большое количество файлов на основании данных - находящихся в екселевской форме - как оттуда взять данные я знаю. Файлы будут однотипными в них будут меняться только некоторые данные - вопрос в том как это реализовать. Вот пример создаваемого файла! Некоторые места - в которых нужно использовать данные отмечены "нужно вставить переменные".
Заранее спасибо!
Прошу помощи в реализации следующей задачи: Необходимо сформировать большое количество файлов на основании данных - находящихся в екселевской форме - как оттуда взять данные я знаю. Файлы будут однотипными в них будут меняться только некоторые данные - вопрос в том как это реализовать. Вот пример создаваемого файла! Некоторые места - в которых нужно использовать данные отмечены "нужно вставить переменные".
Заранее спасибо!
Код:
$RegNomer = ; получаем из экселя вот такого вида - 022-055-000055
$Pahk= ; получаем из экселя вот такого вида - 00008
$Naimenovanie = ; получаем из экселя вот такого вида - РОГА И КОПЫТА и т.д.
$hFile = FileOpen(@ScriptDir & '\PFR-700-Y-2012-ORG-$RegNomer-DCK-$Pahk-DPT-000000-DCK-00000.XML', 2); нужно вставить переменные
$sCode = '<?xml version="1.0" encoding="Windows-1251"?>' & @CRLF & _
'<ФайлПФР>'& @CRLF & _
'<ИмяФайла>PFR-700-Y-2012-ORG-$RegNomer-DCK-$Pahk-DPT-000000-DCK-00000.XML</ИмяФайла>'& @CRLF & _; нужно вставить переменные
'<ЗаголовокФайла>'& @CRLF & _
'<ВерсияФормата>07.00</ВерсияФормата>'& @CRLF & _
'<ТипФайла>ВНЕШНИЙ</ТипФайла>'& @CRLF & _
'<ПрограммаПодготовкиДанных>'& @CRLF & _
'<НазваниеПрограммы>SPU_ORB</НазваниеПрограммы>'& @CRLF & _
'<Версия>1.87</Версия>'& @CRLF & _
'</ПрограммаПодготовкиДанных>'& @CRLF & _
'<ИсточникДанных>СТРАХОВАТЕЛЬ</ИсточникДанных>'& @CRLF & _
'</ЗаголовокФайла>'& @CRLF & _
'<ПачкаВходящихДокументов Окружение="В составе файла" Стадия="До обработки">'& @CRLF & _
'<ВХОДЯЩАЯ_ОПИСЬ_ПО_СТРАХОВЫМ_ВЗНОСАМ>'& @CRLF & _
'<НомерВпачке>1</НомерВпачке>'& @CRLF & _
'<ТипВходящейОписи>ОПИСЬ ПАЧКИ</ТипВходящейОписи>'& @CRLF & _
'<СоставительПачки>'& @CRLF & _
'<НалоговыйНомер>'& @CRLF & _
'<ИНН>7111024668</ИНН>'& @CRLF & _
'<КПП>711121001</КПП>'& @CRLF & _
'</НалоговыйНомер>'& @CRLF & _
'<НаименованиеОрганизации>$Naimenovanie</НаименованиеОрганизации>'& @CRLF & _; нужно вставить переменные
'<НаименованиеКраткое>$Naimenovanie</НаименованиеКраткое>'& @CRLF & _; нужно вставить переменные
'<РегистрационныйНомер>$RegNomer</РегистрационныйНомер>'& @CRLF & _ ; нужно вставить переменные
'</СоставительПачки>'& @CRLF & _
'<НомерПачки>'& @CRLF & _
'<Основной>$Pahk</Основной>'& @CRLF & _; нужно вставить переменные
'</НомерПачки>'& @CRLF & _
'<СоставДокументов>'& @CRLF & _
'<Количество>1</Количество>'& @CRLF & _
'<НаличиеДокументов>'& @CRLF & _
'<ТипДокумента>СВЕДЕНИЯ_О_СТРАХОВЫХ_ВЗНОСАХ_И_СТРАХОВОМ_СТАЖЕ_ЗЛ</ТипДокумента>'& @CRLF & _
'<Количество>1</Количество>'& @CRLF & _
'</НаличиеДокументов>'& @CRLF & _
'</СоставДокументов>'& @CRLF & _
'<ДатаСоставления>16.02.2013</ДатаСоставления>'& @CRLF & _
'<ТипСведений>КОРРЕКТИРУЮЩАЯ</ТипСведений>'& @CRLF & _
'<КодКатегории>НР</КодКатегории>'& @CRLF & _
'<ОтчетныйПериод>'& @CRLF & _
'<Квартал>4</Квартал>'& @CRLF & _
'<Год>2012</Год>'& @CRLF & _
'</ОтчетныйПериод>'& @CRLF & _
'<КорректируемыйОтчетныйПериод>'& @CRLF & _
'<Квартал>2</Квартал>'& @CRLF & _
'<Год>2010</Год>'& @CRLF & _
'</КорректируемыйОтчетныйПериод>'& @CRLF & _
'<СуммаВзносовНаСтраховую>'& @CRLF & _
'<Начислено>8612.00</Начислено>'& @CRLF & _
'<Уплачено>10265.76</Уплачено>'& @CRLF & _
'</СуммаВзносовНаСтраховую>'& @CRLF & _
'<СуммаВзносовНаНакопительную>'& @CRLF & _
'<Начислено>0.00</Начислено>'& @CRLF & _
'<Уплачено>0.00</Уплачено>'& @CRLF & _
'</СуммаВзносовНаНакопительную>'& @CRLF & _
'</ВХОДЯЩАЯ_ОПИСЬ_ПО_СТРАХОВЫМ_ВЗНОСАМ>'& @CRLF & _
'<СВЕДЕНИЯ_О_СТРАХОВЫХ_ВЗНОСАХ_И_СТРАХОВОМ_СТАЖЕ_ЗЛ>'& @CRLF & _
'<НомерВпачке>2</НомерВпачке>'& @CRLF & _
'<ВидФормы>СПВ-1</ВидФормы>'& @CRLF & _
'<ТипСведений>КОРРЕКТИРУЮЩАЯ</ТипСведений>'& @CRLF & _
'<РегистрационныйНомер>022-055-000055</РегистрационныйНомер>'& @CRLF & _
'<НаименованиеКраткое>РОГА И КОПЫТА</НаименованиеКраткое>'& @CRLF & _
'<НалоговыйНомер>'& @CRLF & _
'<ИНН>7111024668</ИНН>'& @CRLF & _
'<КПП>711121001</КПП>'& @CRLF & _
'</НалоговыйНомер>'& @CRLF & _
'<КодКатегории>НР</КодКатегории>'& @CRLF & _
'<ОтчетныйПериод>'& @CRLF & _
'<Квартал>2</Квартал>'& @CRLF & _
'<Год>2010</Год>'& @CRLF & _
'</ОтчетныйПериод>'& @CRLF & _
'<СтраховойНомер>032-360-254 17</СтраховойНомер>'& @CRLF & _
'<ФИО>'& @CRLF & _
'<Фамилия>ИВАНОВА</Фамилия>'& @CRLF & _
'<Имя>НАТАЛЬЯ</Имя>'& @CRLF & _
'<Отчество>ПЕТРОВНА</Отчество>'& @CRLF & _
'</ФИО>'& @CRLF & _
'<СуммаВзносовНаСтраховую>'& @CRLF & _
'<Начислено>8612.00</Начислено>'& @CRLF & _
'<Уплачено>10265.76</Уплачено>'& @CRLF & _
'</СуммаВзносовНаСтраховую>'& @CRLF & _
'<СуммаВзносовНаНакопительную>'& @CRLF & _
'<Начислено>0.00</Начислено>'& @CRLF & _
'<Уплачено>0.00</Уплачено>'& @CRLF & _
'</СуммаВзносовНаНакопительную>'& @CRLF & _
'<ДатаЗаполнения>16.02.2013</ДатаЗаполнения>'& @CRLF & _
'<ДатаСоставленияНа>31.12.2010</ДатаСоставленияНа>'& @CRLF & _
'<СтажевыйПериод>'& @CRLF & _
'<НомерСтроки>1</НомерСтроки>'& @CRLF & _
'<ДатаНачалаПериода>01.07.2010</ДатаНачалаПериода>'& @CRLF & _
'<ДатаКонцаПериода>31.12.2010</ДатаКонцаПериода>'& @CRLF & _
'</СтажевыйПериод>'& @CRLF & _
'</СВЕДЕНИЯ_О_СТРАХОВЫХ_ВЗНОСАХ_И_СТРАХОВОМ_СТАЖЕ_ЗЛ>'& @CRLF & _
'</ПачкаВходящихДокументов>'& @CRLF & _
'</ФайлПФР>'
FileWrite($hFile, $sCode)
FileClose($hFile)