Имя: Пароль:
1C
1С v8
1c 8.2 БП + SAP
0 antistaks
 
20.06.13
14:01
http://s017.radikal.ru/i443/1306/ff/c03bed616de6.jpg
Процедура ЗагрузкаСчетовФактур(Кнопка)  //XML
   
   НомерОшибки = 0;
   //Перечень кодов ошибок
   //1-Контрагент по ИНН не найден  
   //2-В справочнике номенклатуры 1С не найдена ст.затрат 1С, соответствующая счету SAP
   
   //Таблица для логистических счетов-фактур------------------------------------
   ТаблицаЗначенийRE = Новый ТаблицаЗначений;    
   ТаблицаЗначенийRE.Колонки.Добавить("BELNR");
   ТаблицаЗначенийRE.Колонки.Добавить("BLDAT");
   ТаблицаЗначенийRE.Колонки.Добавить("BUDAT");
   ТаблицаЗначенийRE.Колонки.Добавить("XBLNR");
   ТаблицаЗначенийRE.Колонки.Добавить("BUKRS");
   ТаблицаЗначенийRE.Колонки.Добавить("BUKRS_TEXT");
   ТаблицаЗначенийRE.Колонки.Добавить("LIFNR_INN");
   ТаблицаЗначенийRE.Колонки.Добавить("MWSKZ_I");
   ТаблицаЗначенийRE.Колонки.Добавить("ZUONR");
   ТаблицаЗначенийRE.Колонки.Добавить("EBELN");    
   ТаблицаЗначенийRE.Колонки.Добавить("EBELP");
   ТаблицаЗначенийRE.Колонки.Добавить("MATNR");
   ТаблицаЗначенийRE.Колонки.Добавить("SUMMA_BEZ_NDS");
   ТаблицаЗначенийRE.Колонки.Добавить("MENGE");
   ТаблицаЗначенийRE.Колонки.Добавить("SZ_1C");
   ТаблицаЗначенийRE.Колонки.Добавить("AUFPL");
   ТаблицаЗначенийRE.Колонки.Добавить("APLZL");
   ТаблицаЗначенийRE.Колонки.Добавить("OS_1C");
   
   //Таблица для бухгалтерских счетов-фактур-------------------------------------
   ТаблицаЗначенийKR = Новый ТаблицаЗначений;    
   ТаблицаЗначенийKR.Колонки.Добавить("BELNR");    
   ТаблицаЗначенийKR.Колонки.Добавить("BUDAT");
   ТаблицаЗначенийKR.Колонки.Добавить("BUKRS");
   ТаблицаЗначенийKR.Колонки.Добавить("BUKRS_TEXT");
   ТаблицаЗначенийKR.Колонки.Добавить("LIFNR_INN");
   ТаблицаЗначенийKR.Колонки.Добавить("NALOG_1C");
   ТаблицаЗначенийKR.Колонки.Добавить("SUMMA_BEZ_NDS");
   ТаблицаЗначенийKR.Колонки.Добавить("SGTXT");
   ТаблицаЗначенийKR.Колонки.Добавить("ZUONR");
   ТаблицаЗначенийKR.Колонки.Добавить("SZ_1C");

   
   Файл = Новый ЧтениеXML;
   
   СписокФайлов = НайтиФайлы("C:\1C\", "*.xml");
   Если СписокФайлов.Количество() = 0 Тогда
      Предупреждение("Файлов для загрузки не обнаружено!");
      Возврат;
   КонецЕсли;
   
   Для Индекс = 0 По СписокФайлов.ВГраница() Цикл
       ИмяФайла = СписокФайлов[Индекс];
       Файл.ОткрытьФайл(ИмяФайла.ПолноеИмя);
       
       НомерОшибки = 0;
       ТаблицаЗначенийRE.Очистить();
       ТаблицаЗначенийKR.Очистить();
       РежимОбработки = "";
       //Прочитать фрагменты файла                
               
       Пока Файл.Прочитать() Цикл          
           
           Если Файл.Имя = "ZST_RE_EXPORT_XML" Тогда
               РежимОбработки = "LO";
           ИначеЕсли Файл.Имя = "ZST_KR_EXPORT_XML" Тогда
               РежимОбработки = "FI";            
           КонецЕсли;  
           
           //Блок заполнения таблицы значений с/ф LO---------------------------------------------------
           Если РежимОбработки = "LO" Тогда
             
               //После чтения проверить тип узла
               Если Файл.ТипУзла = ТипУзлаXML.НачалоЭлемента И
                    Файл.Имя = "ZST_RE_EXPORT_XML" Тогда
                  ТекущаяКолонка = 1;
                  НоваяСтрокаRE = ТаблицаЗначенийRE.Добавить();
                 КонецЕсли;
       
               Если ТекущаяКолонка <> 0 И
                   Файл.ТипУзла = ТипУзлаXML.Текст Тогда              
                   Если ТекущаяКолонка = 1 Тогда
                       НоваяСтрокаRE.BELNR = СокрЛП(Файл.Значение);
                   ИначеЕсли ТекущаяКолонка = 2 Тогда
                       НоваяСтрокаRE.BLDAT = СокрЛП(Файл.Значение);
                   ИначеЕсли ТекущаяКолонка = 3 Тогда
                         НоваяСтрокаRE.BUDAT = СокрЛП(Файл.Значение);
                     ИначеЕсли ТекущаяКолонка = 4 Тогда
                       НоваяСтрокаRE.XBLNR = СокрЛП(Файл.Значение);
                     ИначеЕсли ТекущаяКолонка = 5 Тогда
                       НоваяСтрокаRE.BUKRS = СокрЛП(Файл.Значение);
                     ИначеЕсли ТекущаяКолонка = 6 Тогда
                         НоваяСтрокаRE.BUKRS_TEXT = СокрЛП(Файл.Значение);
                     ИначеЕсли ТекущаяКолонка = 7 Тогда
                         НоваяСтрокаRE.LIFNR_INN = СокрЛП(Файл.Значение);
                     ИначеЕсли ТекущаяКолонка = 8 Тогда
                         НоваяСтрокаRE.MWSKZ_I = СокрЛП(Файл.Значение);
                     ИначеЕсли ТекущаяКолонка = 9 Тогда
                         НоваяСтрокаRE.ZUONR = СокрЛП(Файл.Значение);
                     ИначеЕсли ТекущаяКолонка = 10 Тогда              
                         НоваяСтрокаRE.EBELN = СокрЛП(Файл.Значение);
                     ИначеЕсли ТекущаяКолонка = 11 Тогда
                         НоваяСтрокаRE.EBELP = СокрЛП(Файл.Значение);
                     ИначеЕсли ТекущаяКолонка = 12 Тогда
                         НоваяСтрокаRE.MATNR = СокрЛП(Файл.Значение);
                     ИначеЕсли ТекущаяКолонка = 13 Тогда
                         НоваяСтрокаRE.SUMMA_BEZ_NDS = СокрЛП(Файл.Значение);
                     ИначеЕсли ТекущаяКолонка = 14 Тогда
                         НоваяСтрокаRE.MENGE = СокрЛП(Файл.Значение);
                     ИначеЕсли ТекущаяКолонка = 15 Тогда
                         НоваяСтрокаRE.SZ_1C = СокрЛП(Файл.Значение);
                     ИначеЕсли ТекущаяКолонка = 16 Тогда
                         НоваяСтрокаRE.AUFPL = СокрЛП(Файл.Значение);
                     ИначеЕсли ТекущаяКолонка = 17 Тогда
                         НоваяСтрокаRE.APLZL = СокрЛП(Файл.Значение);    
                     ИначеЕсли ТекущаяКолонка = 18 Тогда
                         НоваяСтрокаRE.OS_1C = СокрЛП(Файл.Значение);
                     КонецЕсли;
                 КонецЕсли;
         
                 Если ТекущаяКолонка <> 0 И
                    Файл.ТипУзла = ТипУзлаXML.КонецЭлемента Тогда
                     ТекущаяКолонка = ТекущаяКолонка + 1;    
                 КонецЕсли;
             
                 Если Файл.ТипУзла = ТипУзлаXML.КонецЭлемента И
                    Файл.Имя = "ZST_RE_EXPORT_XML" Тогда        
                   ТекущаяКолонка = 0;
               КонецЕсли;
               
           //Блок заполнения таблицы значений с/ф FI---------------------------------------------------
             ИначеЕсли РежимОбработки = "FI" Тогда
               
                 //Начало строки
                 Если Файл.ТипУзла = ТипУзлаXML.НачалоЭлемента И
                      Файл.Имя = "ZST_KR_EXPORT_XML" Тогда
                    ТекущаяКолонка = 1;
                    НоваяСтрокаKR = ТаблицаЗначенийKR.Добавить();
                 КонецЕсли;
               
                 Если ТекущаяКолонка <> 0 И
                     Файл.ТипУзла = ТипУзлаXML.Текст Тогда              
                     Если ТекущаяКолонка = 1 Тогда
                         НоваяСтрокаKR.BELNR = СокрЛП(Файл.Значение);          
                     ИначеЕсли ТекущаяКолонка = 2 Тогда
                         НоваяСтрокаKR.BUDAT = СокрЛП(Файл.Значение);          
                     ИначеЕсли ТекущаяКолонка = 3 Тогда
                         НоваяСтрокаKR.BUKRS = СокрЛП(Файл.Значение);
                     ИначеЕсли ТекущаяКолонка = 4 Тогда              
                         НоваяСтрокаKR.BUKRS_TEXT = СокрЛП(Файл.Значение);
                     ИначеЕсли ТекущаяКолонка = 5 Тогда
                         НоваяСтрокаKR.LIFNR_INN = СокрЛП(Файл.Значение);
                     ИначеЕсли ТекущаяКолонка = 6 Тогда
                         НоваяСтрокаKR.NALOG_1C = СокрЛП(Файл.Значение);          
                     ИначеЕсли ТекущаяКолонка = 7 Тогда
                         НоваяСтрокаKR.SUMMA_BEZ_NDS = СокрЛП(Файл.Значение);          
                     ИначеЕсли ТекущаяКолонка = 8 Тогда
                         НоваяСтрокаKR.SGTXT = СокрЛП(Файл.Значение);
                     ИначеЕсли ТекущаяКолонка = 9 Тогда
                         НоваяСтрокаKR.ZUONR = СокрЛП(Файл.Значение);
                     ИначеЕсли ТекущаяКолонка = 10 Тогда
                         НоваяСтрокаKR.SZ_1C = СокрЛП(Файл.Значение);
                     КонецЕсли;
                 КонецЕсли;
                 
                 Если ТекущаяКолонка <> 0 И
                      Файл.ТипУзла = ТипУзлаXML.КонецЭлемента Тогда
                         ТекущаяКолонка = ТекущаяКолонка + 1;    
                 КонецЕсли;
                 
                 Если Файл.ТипУзла = ТипУзлаXML.КонецЭлемента И
                        Файл.Имя = "ZST_KR_EXPORT_XML" Тогда        
                       ТекущаяКолонка = 0;
                 КонецЕсли;

             
             КонецЕсли;
       КонецЦикла;

       Файл.Закрыть();

       //Создание документа на базе счет-фактуры LO----------------------------------------------
       Если РежимОбработки = "LO" Тогда
           Для Каждого ТекущаяСтрокаRE Из ТаблицаЗначенийRE Цикл
               НовыйДокумент = Документы.ПоступлениеТоваровУслуг.СоздатьДокумент();
               
               //Заполнение шапки документа///////////////////////////////////////////////////////////
               ДатаTMP = СокрЛП(СтрЗаменить(ТекущаяСтрокаRE.BUDAT,"-",""));
               НовыйДокумент.Дата = Дата(ДатаTMP);
               
               //Константы
               НовыйДокумент.ВалютаДокумента     = Справочники.Валюты.НайтиПоКоду("643");//Рубль
               НовыйДокумент.ТипЦен              = Справочники.ТипыЦенНоменклатуры.НайтиПоКоду("000000002");
               НовыйДокумент.СпособЗачетаАвансов = ПолучитьСсылкуНаЗначениеПеречисления ("СпособыЗачетаАвансов", "Автоматически");
               НовыйДокумент.Склад               = Справочники.Склады.НайтиПоКоду("000000001");
               
               //Проверка наличия организации (БЕ SAP) в справочнике организаций-------------------------------------
               //и добавление ее в справочник в случае отсутствия
               НайденнаяОрганизация = Справочники.Организации.НайтиПоНаименованию(ТекущаяСтрокаRE.BUKRS_TEXT);        
               Если НайденнаяОрганизация = Справочники.Организации.ПустаяСсылка() Тогда  //Добавляем БЕ в справочник
                   НоваяОрганизация = Справочники.Организации.СоздатьЭлемент();
                   НоваяОрганизация.Наименование = ТекущаяСтрокаRE.BUKRS_TEXT;
                   НоваяОрганизация.ЮрФизЛицо = ПолучитьСсылкуНаЗначениеПеречисления("ЮрФизЛицо", "ЮрЛицо");
                   НоваяОрганизация.Записать();
               КонецЕсли;
               
               НовыйДокумент.Организация         = Справочники.Организации.НайтиПоНаименованию(ТекущаяСтрокаRE.BUKRS_TEXT);
               НовыйДокумент.Контрагент          = Справочники.Контрагенты.НайтиПоРеквизиту("ИНН", ТекущаяСтрокаRE.LIFNR_INN);        
               
               НайденныйКонтрагент = Справочники.Контрагенты.НайтиПоРеквизиту("ИНН", ТекущаяСтрокаRE.LIFNR_INN);
               Если НайденныйКонтрагент = Справочники.Контрагенты.ПустаяСсылка() Тогда
                   НомерОшибки = 1;
               КонецЕсли;
               
               //Реквизит "Договор контрагента" - смотрим по номеру присвоения SAP наличие договора с таким
               //наименование, в случае-отсутствия - добавляем
               НайденныйДоговор = Справочники.ДоговорыКонтрагентов.НайтиПоНаименованию(ТекущаяСтрокаRE.ZUONR);
               Если НайденныйДоговор = Справочники.ДоговорыКонтрагентов.ПустаяСсылка() И
                    НомерОшибки = 0 Тогда
                   НовыйДоговор = Справочники.ДоговорыКонтрагентов.СоздатьЭлемент();
                   НовыйДоговор.Наименование         = ТекущаяСтрокаRE.ZUONR;
                   НовыйДоговор.ВидДоговора          = Перечисления.ВидыДоговоровКонтрагентов.СПоставщиком;
                   НовыйДоговор.Организация          = НовыйДокумент.Организация;
                   НовыйДоговор.Владелец             = НовыйДокумент.Контрагент;
                   НовыйДоговор.ВалютаВзаиморасчетов = НовыйДокумент.ВалютаДокумента;
                   НовыйДоговор.Записать();
               КонецЕсли;
               
               НовыйДокумент.ДоговорКонтрагента  = Справочники.ДоговорыКонтрагентов.НайтиПоНаименованию(ТекущаяСтрокаRE.ZUONR);
               
               НовыйДокумент.СчетУчетаРасчетовСКонтрагентом = ПланыСчетов.Хозрасчетный.НайтиПоКоду("60.01");
               НовыйДокумент.СчетУчетаРасчетовПоАвансам     = ПланыСчетов.Хозрасчетный.НайтиПоКоду("60.02");
               
               // Данные первичного документа
               НовыйДокумент.ПредъявленСчетФактура = Истина;        
               НовыйДокумент.НомерВходящегоСчетаФактуры = ТекущаяСтрокаRE.XBLNR;        
               ДатаTMP = СокрЛП(СтрЗаменить(ТекущаяСтрокаRE.BLDAT,"-",""));
               НовыйДокумент.ДатаВходящегоСчетаФактуры  = Дата(ДатаTMP);
               
               // Дополнительные данные
               НовыйДокумент.НомерСчетаФактурыСАП       = ТекущаяСтрокаRE.BELNR;
               НовыйДокумент.НомерЗаказаСАП             = ТекущаяСтрокаRE.EBELN;    
               
               //Заполнение табличной части///////////////////////////////////
               Если ТекущаяСтрокаRE.MATNR = Неопределено Тогда
               //Объекты строительства        
                   НовыйДокумент.ВидОперации = ПолучитьСсылкуНаЗначениеПеречисления ("ВидыОперацийПоступлениеТоваровУслуг", "ОбъектыСтроительства");
                   НоваяСтрокаОС = НовыйДокумент.ОбъектыСтроительства.Добавить();
                   
                   НоваяСтрокаОС.ОбъектСтроительства = Справочники.ОбъектыСтроительства.НайтиПоКоду(ТекущаяСтрокаRE.OS_1C);
                   НоваяСтрокаОС.СтатьяЗатрат        = Справочники.СтатьиЗатрат.НайтиПоКоду(ТекущаяСтрокаRE.SZ_1C);
                   НоваяСтрокаОС.СчетУчета           = ПланыСчетов.Хозрасчетный.ОбщехозяйственныеРасходы;
                   НоваяСтрокаОС.Сумма               = ТекущаяСтрокаRE.SUMMA_BEZ_NDS;
                   
               Иначе
               //Товары
                   НоваяСтрокаТовары = НовыйДокумент.Товары.Добавить();            
               КонецЕсли;
               
               // Записать документ        
               Попытка
                   Если НомерОшибки = 0 Тогда
                       НовыйДокумент.Записать();
                   КонецЕсли;
                   ОтправитьРезультатЗагрузкиСФ(ТекущаяСтрокаRE.BELNR, ТекущаяСтрокаRE.BUDAT, ТекущаяСтрокаRE.BUKRS, НомерОшибки, НовыйДокумент.Номер);
               Исключение
                   //Сообщить(ОписаниеОшибки());
               КонецПопытки;        
           КонецЦикла;
           
       //Создание документа на базе счет-фактуры FI----------------------------------------------
       ИначеЕсли РежимОбработки = "FI" Тогда
           
            Для Каждого ТекущаяСтрокаKR Из ТаблицаЗначенийKR Цикл
               НовыйДокумент = Документы.ПоступлениеТоваровУслуг.СоздатьДокумент();                
               
               НовыйДокумент.ВидОперации = ПолучитьСсылкуНаЗначениеПеречисления ("ВидыОперацийПоступлениеТоваровУслуг", "ПокупкаКомиссия");
               НовыйДокумент.УчитыватьНДС = Истина;  // Иначе не отображаются колонки с НДС
               НовыйДокумент.НДСВключенВСтоимость = Истина;
               
               //Заполнение шапки документа///////////////////////////////////////////////////////////
               ДатаTMP = СокрЛП(СтрЗаменить(ТекущаяСтрокаKR.BUDAT,"-",""));
               НовыйДокумент.Дата = Дата(ДатаTMP);
               
               //Константы
               НовыйДокумент.ВалютаДокумента     = Справочники.Валюты.НайтиПоКоду("643");//Рубль
               НовыйДокумент.ТипЦен              = Справочники.ТипыЦенНоменклатуры.НайтиПоКоду("000000002");
               НовыйДокумент.СпособЗачетаАвансов = ПолучитьСсылкуНаЗначениеПеречисления ("СпособыЗачетаАвансов", "Автоматически");
               НовыйДокумент.Склад               = Справочники.Склады.НайтиПоКоду("000000001");
               
               //Проверка наличия организации (БЕ SAP) в справочнике организаций-------------------------------------
               //и добавление ее в справочник в случае отсутствия
               НайденнаяОрганизация = Справочники.Организации.НайтиПоНаименованию(ТекущаяСтрокаKR.BUKRS_TEXT);        
               Если НайденнаяОрганизация = Справочники.Организации.ПустаяСсылка() Тогда  //Добавляем БЕ в справочник
                   НоваяОрганизация = Справочники.Организации.СоздатьЭлемент();
                   НоваяОрганизация.Наименование = ТекущаяСтрокаKR.BUKRS_TEXT;
                   НоваяОрганизация.ЮрФизЛицо = ПолучитьСсылкуНаЗначениеПеречисления("ЮрФизЛицо", "ЮрЛицо");
                   НоваяОрганизация.Записать();
               КонецЕсли;
               
               НовыйДокумент.Организация         = Справочники.Организации.НайтиПоНаименованию(ТекущаяСтрокаKR.BUKRS_TEXT);
               НовыйДокумент.Контрагент          = Справочники.Контрагенты.НайтиПоРеквизиту("ИНН", ТекущаяСтрокаKR.LIFNR_INN);
               
               НайденныйКонтрагент = Справочники.Контрагенты.НайтиПоРеквизиту("ИНН", ТекущаяСтрокаKR.LIFNR_INN);
               Если НайденныйКонтрагент = Справочники.Контрагенты.ПустаяСсылка() Тогда
                   НомерОшибки = 1;
               КонецЕсли;
               
               //Реквизит "Договор контрагента" - смотрим по номеру присвоения SAP наличие договора с таким
               //наименование, в случае-отсутствия - добавляем
               НайденныйДоговор = Справочники.ДоговорыКонтрагентов.НайтиПоНаименованию(ТекущаяСтрокаKR.ZUONR);
               Если НайденныйДоговор = Справочники.ДоговорыКонтрагентов.ПустаяСсылка() И
                    НомерОшибки = 0 Тогда
                   НовыйДоговор = Справочники.ДоговорыКонтрагентов.СоздатьЭлемент();
                   НовыйДоговор.Наименование         = ТекущаяСтрокаKR.ZUONR;
                   НовыйДоговор.ВидДоговора          = Перечисления.ВидыДоговоровКонтрагентов.СПоставщиком;
                   НовыйДоговор.Организация          = НовыйДокумент.Организация;
                   НовыйДоговор.Владелец             = НовыйДокумент.Контрагент;
                   НовыйДоговор.ВалютаВзаиморасчетов = НовыйДокумент.ВалютаДокумента;
                   НовыйДоговор.Записать();
               КонецЕсли;
               
               НовыйДокумент.ДоговорКонтрагента  = Справочники.ДоговорыКонтрагентов.НайтиПоНаименованию(ТекущаяСтрокаKR.ZUONR);            
               
               НовыйДокумент.СчетУчетаРасчетовСКонтрагентом = ПланыСчетов.Хозрасчетный.НайтиПоКоду("60.01");
               НовыйДокумент.СчетУчетаРасчетовПоАвансам     = ПланыСчетов.Хозрасчетный.НайтиПоКоду("60.02");
                       
               // Дополнительные данные
               НовыйДокумент.НомерСчетаФактурыСАП       = ТекущаяСтрокаKR.BELNR;        
               
               //Заполнение табличной части///////////////////////////////////        
               НоваяСтрокаОС = НовыйДокумент.Услуги.Добавить();
               
               СтатьяЗатрат = Справочники.СтатьиЗатрат.НайтиПоКоду(ТекущаяСтрокаKR.SZ_1C);
               НоваяСтрокаОС.Номенклатура = Справочники.Номенклатура.НайтиПоНаименованию(СтатьяЗатрат.Наименование);
               Если НоваяСтрокаОС.Номенклатура = Справочники.Номенклатура.ПустаяСсылка() Тогда
                   НомерОшибки = 2;
               КонецЕсли;
               
               НоваяСтрокаОС.Содержание          = ТекущаяСтрокаKR.SGTXT;
               НоваяСтрокаОС.Количество          = "1";
               НоваяСтрокаОС.Сумма               = ТекущаяСтрокаKR.SUMMA_BEZ_NDS;
               НоваяСтрокаОС.Цена                = ТекущаяСтрокаKR.SUMMA_BEZ_NDS;                        
               НоваяСтрокаОС.СчетЗатрат          = ПланыСчетов.Хозрасчетный.НайтиПоКоду("26");
               НоваяСтрокаОС.Субконто1           = СтатьяЗатрат;
                       
               НоваяСтрокаОС.СтавкаНДС = Вычислить("Перечисления.СтавкиНДС." + ТекущаяСтрокаKR.NALOG_1C);                
               ОбработкаТабличныхЧастей.РассчитатьСуммуНДСТабЧасти(НоваяСтрокаОС, НовыйДокумент);    
               
               Если НоваяСтрокаОС.СтавкаНДС = 0 Тогда
                   НоваяСтрокаОС.ОтражениеВУСН       = Перечисления.ОтражениеВУСН.НеПринимаются;
               Иначе
                   НоваяСтрокаОС.ОтражениеВУСН       = Перечисления.ОтражениеВУСН.Принимаются;
               КонецЕсли;        
               
               // Записать документ        
               Попытка
                   Если НомерОшибки = 0 Тогда
                       НовыйДокумент.Записать();
                   КонецЕсли;
                   ОтправитьРезультатЗагрузкиСФ(ТекущаяСтрокаKR.BELNR, ТекущаяСтрокаKR.BUDAT, ТекущаяСтрокаKR.BUKRS, НомерОшибки, НовыйДокумент.Номер);
               Исключение
                   //Сообщить(ОписаниеОшибки());
               КонецПопытки;
               
           КонецЦикла;

       КонецЕсли;
   КонецЦикла;
   
КонецПроцедуры
1 antistaks
 
20.06.13
14:01
2 Dionis Sergeevich
 
20.06.13
14:14
(1) Подробно - Конфигуратор чего показывает?