переход из 1С:Предприниматель 7.7 в 8.2
Показывать по
10
20
40
сообщений
- 1
- 2
14.03.2013
16:27
#11
Пробовал. Процесс то всё-равно 32х битный. Съедает 1,4 GB из положенных 4 GB и падает.
14.03.2013
16:54
#13
Что есть ТиИ? Тестирование и исправление ИБ? Свёртки там не нашёл. Нашёл только "упаковку таблиц ИБ", что собственно и было сделано изначально.
16.04.2013
09:58
#14
Проблему не решил.
Грохнул все документы до начала года. Ввёл остатки вручную. Перегнал в БП 2.0 стандартной обработкой.
Грохнул все документы до начала года. Ввёл остатки вручную. Перегнал в БП 2.0 стандартной обработкой.
04.12.2014
09:16
#15
Ошибка находится в процедуре "ВыгрузитьОстаткиПрочихРасходов()"
в обработке по переносу "IP_ACC8.ert"
идет странное зацикливание на обработку запросу.
Решение:
1) в тексте запроса убрать/за комментировать "|Без итогов;"
2) создаете таблицу значений и обходите запрос по группировкам.
внимание если оставить "|Без итогов;", и сделать проще "запрос.выгрузить(тзВаше)"-приведет также к переполнению памяти
3) заполняем параметры из созданной таблицы
рабочий код на время переноса:
в обработке по переносу "IP_ACC8.ert"
идет странное зацикливание на обработку запросу.
Решение:
1) в тексте запроса убрать/за комментировать "|Без итогов;"
2) создаете таблицу значений и обходите запрос по группировкам.
внимание если оставить "|Без итогов;", и сделать проще "запрос.выгрузить(тзВаше)"-приведет также к переполнению памяти
3) заполняем параметры из созданной таблицы
рабочий код на время переноса:
| Код |
|---|
Функция ВыгрузитьОстаткиПрочихРасходов(
ИсходящиеДанные = "", ВходящиеДанные = "", Источник = "", Приемник = "", ТипПриемника = "", Значение = "", Выражение = "",
Пусто = "", ВыборкаДанных = "", Объект = "", КоллекцияОбъектов = "", ОбъектКоллекции = "", ИмяПКО = "", ИмяПКОВидСубконто = "",
НомерПКО = "", НомерПКС = "", Правило = "", КлючВыгружаемыхДанных = "", НеЗапоминатьВыгруженные = "", НеЗамещатьОбъектПриЗагрузке = "",
ВсеОбъектыВыгружены = "", ТолькоПолучитьУзелСсылки = "", РежимЗаписи = "", РежимПроведения = "", СтандартнаяОбработка = "",
НеЗамещать = "", НеОчищать = "", УзелСсылки = "", УзелКоллекцииОбъектов = "", УзелОбъектаКоллекции = "", УзелСвойства = "",
ВидСубконто = "", Субконто = "", Отказ = "")
Параметры.ТаблицаОстатковМПЗ.УдалитьСтроки();
ВыбНачПериода = Параметры.ДатаКонцаПериодаВыгрузки;
ВыбКонПериода = Параметры.ДатаКонцаПериодаВыгрузки;
Если Параметры.ДатаВводаОстатков = Параметры.ДатаКонцаПериодаВыгрузки Тогда
ВидОстатка = "НачОст";
Иначе
ВидОстатка = "КонОст";
КонецЕсли;
Запрос = СоздатьОбъект("Запрос");
ТекстЗапроса =
"//{{ЗАПРОС(Сформировать)
|Период с ВыбНачПериода по ВыбКонПериода;
//|Без итогов;
|ВидДеятельности = Регистр.РасчетыСПоставщиками.ВидДеятельности;
|ОблагаетсяНДС = Регистр.РасчетыСПоставщиками.ОблагаетсяНДС;
|Договор = Регистр.РасчетыСПоставщиками.Договор;
|Номенклатура = Регистр.РасчетыСПоставщиками.Номенклатура;
|Партия = Регистр.РасчетыСПоставщиками.РасчДокумент;
|Количество = Регистр.РасчетыСПоставщиками.Количество;
|Сумма = Регистр.РасчетыСПоставщиками.Сумма;
|СуммаНДС = Регистр.РасчетыСПоставщиками.СуммаНДС;
|Функция КоличествоНачОст = " + ВидОстатка + "(Количество);
|Функция СуммаНачОст = " + ВидОстатка + "(Сумма);
|Функция СуммаНДСНачОст = " + ВидОстатка + "(СуммаНДС);
|Группировка ВидДеятельности;
|Группировка Договор;
|Группировка Номенклатура без групп;
|Группировка Партия;
|Условие(Партия.Вид() = ""ПрочиеРасходыРасчеты"");
|"//}}ЗАПРОС
;
// Если ошибка в запросе, то выход из процедуры
Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
Возврат 0;
КонецЕсли;
//не формирует почемуто какая то трабла с таблицой данных
тз = Создатьобъект("ТаблицаЗначений");
тз.НоваяКолонка("ВидДеятельности","Справочник.ВидыДеятельности");
тз.НоваяКолонка("Договор","Справочник.Договоры");
тз.НоваяКолонка("Номенклатура","Справочник.Номенклатура");
тз.НоваяКолонка("Партия","Документ");
тз.НоваяКолонка("КоличествоНачОст","Число",15,3);
тз.НоваяКолонка("СуммаНачОст","Число",15,3);
тз.НоваяКолонка("СуммаНДСНачОст","Число",15,3);
тз.НоваяКолонка("ОблагаетсяНДС");
Пока Запрос.Группировка(1) = 1 Цикл//ВидДеятельности
Пока Запрос.Группировка(2) = 1 Цикл//Договор
Пока Запрос.Группировка(3) = 1 Цикл//Номенклатура
Пока Запрос.Группировка(4) = 1 Цикл//Партия
тз.НоваяСтрока();
тз.ВидДеятельности = Запрос.ВидДеятельности;
тз.Договор = Запрос.Договор;
тз.Номенклатура = Запрос.Номенклатура;
тз.Партия = Запрос.Партия;
тз.ОблагаетсяНДС = Запрос.ОблагаетсяНДС;
тз.КоличествоНачОст = Запрос.КоличествоНачОст;
тз.СуммаНачОст = Запрос.СуммаНачОст;
тз.СуммаНДСНачОст = Запрос.СуммаНДСНачОст;
КонецЦикла;
КонецЦикла;
КонецЦикла;
КонецЦикла;
Запрос= "";
Запрос = Создатьобъект("ТаблицаЗначений");
тз.выгрузить(Запрос);
Запрос.ВыбратьСтроки();
НомерСтроки = 1;
Пока Запрос.ПолучитьСтроку() = 1 Цикл
НоменклатурнаяГруппа = ?(ПустоеЗначение(Запрос.ВидДеятельности) = 1, Параметры.ОсновнаяНоменклатурнаяГруппа, СокрЛП(Запрос.ВидДеятельности.Наименование));
Параметры.ТаблицаОстатковМПЗ.НоваяСтрока();
Параметры.ТаблицаОстатковМПЗ.Ключ = НомерСтроки;
Параметры.ТаблицаОстатковМПЗ.НомерСтрокиТЧ = НомерСтроки;
Параметры.ТаблицаОстатковМПЗ.Номенклатура = Запрос.Номенклатура;
Параметры.ТаблицаОстатковМПЗ.Партия = Запрос.Договор;
Параметры.ТаблицаОстатковМПЗ.Количество = Запрос.КоличествоНачОст;
Параметры.ТаблицаОстатковМПЗ.Сумма = Запрос.СуммаНачОст;
Параметры.ТаблицаОстатковМПЗ.НДС = Запрос.СуммаНДСНачОст;
Параметры.ТаблицаОстатковМПЗ.НоменклатурнаяГруппа = НоменклатурнаяГруппа;
Если Запрос.СуммаНДСНачОст <> 0 Тогда
Параметры.ТаблицаОстатковМПЗ.НДСВключенВСтоимость =?(Запрос.ОблагаетсяНДС = 0, 1, 0);
Иначе
Параметры.ТаблицаОстатковМПЗ.НДСВключенВСтоимость = 0;
КонецЕсли;
Параметры.ПараметрыАлгоритмов.Установить("ВидДеятельсности", Запрос.ВидДеятельности);
Параметры.ТаблицаОстатковМПЗ.ХарактерДеятельности = ОпределитьХарактерДеятельности( ИсходящиеДанные, ВходящиеДанные, Источник, Приемник, ТипПриемника, Значение, Выражение,,,,,,,,,,,,,,,,,,,,,,,,,,, Отказ);
НомерСтроки = НомерСтроки + 1;
КонецЦикла;
ВходящиеДанные = СоздатьОбъект("СписокЗначений");
ВходящиеДанные.Установить("РазделУчета", Параметры.РазделУчета);
Если Параметры.ДатаВводаОстатков = Параметры.ДатаКонцаПериодаВыгрузки Тогда
ВходящиеДанные.Установить("Дата", Параметры.ДатаВводаОстатков - 1);
Иначе
ВходящиеДанные.Установить("Дата", Параметры.ДатаКонцаПериодаВыгрузки);
КонецЕсли;
ВходящиеДанные.Установить("ОтражатьВБухгалтерскомУчете", 1);
ВходящиеДанные.Установить("ОтражатьВНалоговомУчете", 1);
ВходящиеДанные.Установить("ОтражатьПоСпециальнымРегистрам", 1);
ВходящиеДанные.Установить("ВходящиеОстатки", Параметры.ТаблицаОстатковМПЗ);
ВыгрузитьПоПравилу(,,ВходящиеДанные,, "ВводНачальныхОстатков");
КонецФункции // ВыгрузитьОстаткиПрочихРасходов()
|
- 1
- 2
Читают тему
(гостей: 1)