Группа: Пользователи
Сообщений: 31
Спасибо сказали: 2 раз
Рейтинг: 0
Добрый день, столкнулся с проблемой при формировании проводок 1с вылетает с ошибкой Runtime error! Конфигурация сервера такая: Xeon 5130 2GHz, 2Gb RAM, HDD RAID 1 SAS База в SQL, MSSQL Server 2000 SP4, размер базы 13,6 Gb Формирование проводок делается ежедневно, раньше такого не было, разве что если попробовать сформировать проводки за неделю
Покопался в сети, часто спасает удаление журнала - удалил - не помогло Перенес каталог ИБ в другое место - не помогло Запускал формирование на другой машине - не помогло (Xeon 5503 2GHz, 24GB RAM, HDD RAID1 SATA 1Tb, MSSQL 2005) Запускал формирование на сетевой машине - не помогло Сделал бекап sql базы, очистил каталог информационной базы (оставил MD и DDS)
Остается только выгрузка базы и обратная загрузка... но на таком объеме это займет пару суток и не факт что поможет. Это не выход из ситуации
Как быть? Подозреваю что проблема в нехватке памяти, но в тоже время встает вопрос почему же тогда не формируется на машине с 24 гигами оперативки и 2005 скуле?
Скриншот сделан с сетевой машины, где установлен медок и прочие мелочи жизни. на сервере ничего подобного нет.
!
10 постов уже, пора бы ознакомиться с правилами. Неправильно вставленная картинка удалена.
Группа: Основатель
Сообщений: 13981
Из: Киев
Спасибо сказали: 4549 раз
Рейтинг: 3678.1
Возможно проблема в 1 каком-то документе. Можно попробовать его найти (перебором, распроводя поочередно и проверяя работоспособность системы) и просто ввести такой же документ заново, а проблемный удалить.
Да, кстати, всё хочу спросить: а что вы подразумеваете под термином "формирование проводок"?
Возможно проблема в 1 каком-то документе. Можно попробовать его найти (перебором, распроводя поочередно и проверяя работоспособность системы) и просто ввести такой же документ заново, а проблемный удалить.
Да, кстати, всё хочу спросить: а что вы подразумеваете под термином "формирование проводок"?
Торг->Бух в комплексной?? наверное....
----------------------------------------------------------------------------------- Единственный, интуитивно понятный интерфейс - мамкина сиська! Всему остальному надо учиться! (с) Не знаю кто....
Как быть? Подозреваю что проблема в нехватке памяти, но в тоже время встает вопрос почему же тогда не формируется на машине с 24 гигами оперативки и 2005 скуле?
нехватка памяти где? на лошадке - тогда сервер вообще не причем 1с - 32бит и у нее потолок 2GB. Если запускать под 64-бит ОС, то ей выделят 4GB, но не факт, что 1С сможет этим воспользоваться!
Если на сервере, то 2005 не Express?, тогда у него свои ограничения на железо и плевать ей сколько там мозгов!
Если ..... тогда не знаю...
PS может еще в журнале регистрации что-то полезное есть? на каком объекте выпадает?
Никогда не бойся делать то, что не умеешь, помни - Ноев ковчег был построен любителем, профессионалы построили Титаник. ЗиУП
Группа: Пользователи
Сообщений: 31
Спасибо сказали: 2 раз
Рейтинг: 0
Цитата(Vofka @ 13.05.13, 16:57)
Возможно проблема в 1 каком-то документе. Можно попробовать его найти (перебором, распроводя поочередно и проверяя работоспособность системы) и просто ввести такой же документ заново, а проблемный удалить.
Да, кстати, всё хочу спросить: а что вы подразумеваете под термином "формирование проводок"?
Да, Торг->бух в комплексной
Попытка разбить документ не увенчалась успехом, на последней части постоянно вылетала ошибка. Да, возможно проблема с товаром в части, буду вычислять дальше. Но посже. Сейчас пытаюсь провести хоть както, пусть без пары документов (если только пары), чтоб вычислить проблемный кусок, потом буду кромсать документ пока не найду на чем стопорится.
На моей памяти была такая ошибка когда я пытался проводить торг->бух не за 1 день, а за неделю, потом пару дней. Отсюда и подозрения на железо, но тогда не было возможности проверить на более мощной системе.
Цитата(alex040269 @ 13.05.13, 17:39)
PS может еще в журнале регистрации что-то полезное есть? на каком объекте выпадает?
В журнале регистрации все печально. При начале проведения запись Документ записан - Документ.ФормированиеПроводокТорговля ((000)274256) При окончании проведения (если процесс завершился удачно) Документ проведен - Документ.ФормированиеПроводокТорговля ((000)274256)
Кстати один умный человек подсказал мысль, что можно сделать чтоб при проведении выводились сообщения, ну и как раз увидеть на каком объекте происходит вылет (через Сообщить()). Только вот в 1с я не силен, а человек тот занят сейчас. Может подскажите что и куда можно вписать? Фрагмент кода приведу ниже:
Процедура ОбработкаДокументов() //Проверка пометки на удаление пропустил
ДатаНач=глНачалоПериодаФормированияПроводок(Контекст); Начало=ДатаНач; Если (МонопольныйРежим()=0) и (ПолучитьДатуТА()<Начало) Тогда Начало=ПолучитьПозициюТА(); КонецЕсли;
Попытка
Если Модифицированность()=1 Тогда Если Вопрос("Записать документ?", "ОК+Отмена")<>"ОК" Тогда Возврат; КонецЕсли; ПриЗаписиПерепроводить(0); Записан=Записать(); ПриЗаписиПерепроводить(1); Если Записан=0 Тогда Предупреждение("Формирование проводок не выполнено!"); Возврат; КонецЕсли; КонецЕсли;
Объект=СоздатьОбъект("Документ"); Объект.УстановитьФильтр(1, 0, 0, 2, 1, 2); Объект.ВыбратьПоЗначению(Начало, ДатаДок,"Фирма",Фирма); Пока Объект.ПолучитьДокумент()=1 Цикл
Если (Метаданные.Документ(Объект.Вид()).ОперативныйУчет = 0) или (Метаданные.Документ(Объект.Вид()).БухгалтерскийУчет = 0) Тогда Продолжить; КонецЕсли;
Если Лев(Объект.Вид(),2) <>"Т_" Тогда // налоговые не перепроводим Продолжить; ИначеЕсли (Объект.СравнитьТА()=1) Тогда // перепроводятся все документы за ТА
ИначеЕсли (Метаданные.Документ(Объект.Вид()).БухгалтерскийУчет<>1) Тогда Продолжить; ИначеЕсли (Объект.ДатаДок<ДатаНач) ИЛИ (Объект.Фирма<>Фирма) ИЛИ (Объект.ТипУчета=Упр) Тогда Продолжить; ИначеЕсли (Детализация=Перечисление.ФормированиеПроводок.Детальные) Тогда // перепроводятся все документы ИначеЕсли (Объект.СуществуетОперация()=глНужныДетальныеПроводки(Объект, Контекст)) Тогда Продолжить; КонецЕсли;
Если Объект.Провести()=0 Тогда ОтменитьТранзакцию(); Предупреждение("Формирование проводок не выполнено!"); Возврат; КонецЕсли;
Если Объект.ПолучитьПозицию() < ПозицияГраницыОсновнойПоследовательности Тогда Последовательность.ОсновнаяПоследовательность.Установить(ПозицияГраницыОсновнойПоследовательности); КонецЕсли;
КонецЦикла;
ЗафиксироватьТранзакцию();
Если Провести()=0 Тогда Предупреждение("Формирование проводок не завершено!"); Иначе Предупреждение("Формирование проводок завершено."); КонецЕсли;
Исключение ПриЗаписиПерепроводить(1); // если не удачная попытка Записать(); глКомментарий(ОписаниеОшибки()); Предупреждение("Формирование проводок не выполнено!"); КонецПопытки;
Группа: Пользователи
Сообщений: 31
Спасибо сказали: 2 раз
Рейтинг: 0
Вручную набрал накладную на которой происходит вылет и нихрена. Попробовать другим видом документа сделать и опять же ничего (был ОтчетКА сделал розничной накладной)
Группа: Основатель
Сообщений: 13981
Из: Киев
Спасибо сказали: 4549 раз
Рейтинг: 3678.1
В голову сейчас приходят только стандартные процедуры: - сделать Тестирование и исправление базы; - сделать выгрузку/загрузку базы; - переустановить платформу. Какой релиз, кстати? Надо 27 чтоб был; - что, если попробовать на другом компе развернуть базу и все это сделать?
Группа: Пользователи
Сообщений: 31
Спасибо сказали: 2 раз
Рейтинг: 0
Цитата(Ardi @ 14.05.13, 16:08)
В бухгалтерской проводке не указан счет по дебету или кредиту.
По идее проводки я только формирую, но на всякий случай проверю
Цитата(Vofka @ 14.05.13, 16:07)
В голову сейчас приходят только стандартные процедуры: - сделать Тестирование и исправление базы; - сделать выгрузку/загрузку базы; - переустановить платформу. Какой релиз, кстати? Надо 27 чтоб был; - что, если попробовать на другом компе развернуть базу и все это сделать?
- Тестирование и исправление делал - Стоит 27 релиз - Это 3-й комп на котором пытаюсь провести. База распределенная, одна из периферий является полной копией центральной, там изначально проводим торг-бух, когда выяснилось что там не взлетает, начал пробовать на сервере в центральной базе, когда стало ясно что и там не работает, сделал копию на 3-й комп и на нем экспериментирую
Группа: Пользователи
Сообщений: 31
Спасибо сказали: 2 раз
Рейтинг: 0
Проблема отключением транзакции не решилась. Вероятно нехватка памяти или неумение v77 правильно работать с памятью. Решением проблемы возможно будет проведение частями, но как делать это с торг-бухом не понятно. Если кому интересно ветка обсуждения дублировалась здесь: [необходимо зарегистрироваться для просмотра ссылки] Случай пока единичный, будем искать решение проблемы дальше.
Возможно на x64 работало бы... но не факт. Сменой платформы мы оптимизируем работу sql, а 1с как была так и останется работать в 32-х битном режиме.
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!