#0
by rt0107
Собственно, сабж. База DBF. И вообще, если Док.Провести возвращает нуль, транзакция остается активной?
#1
by OnCheck
а про какую транзакцию речь? автоматическую при проведении документа или пользовательскую НачатьТранзакцию?
#3
by rt0107
а не типовых способов нету случаем? Скажем, у FormEx или 1C++ ничего такого не наблюдалось? Вроде бы в доках рылся внимательно, но мало ли что.
#5
by rt0107
Ищу адекватный способ разбить большую транзакцию на ряд более мелких: проводится достаточно большой пак документов, при возможных ошибках неохота перепроводить все с самого начала. Нарисовал так: и основная процедура выглядит так Из приведенного кода выкинул для краткости всякие "сообщить" и прочую обвеску. Так вот, на ЗафиксироватьТранзакцию в функции СчетчикПлюс оно падает с воплем "Транзакция не активна". Причем в первом же паке, когда счетчик до 10 доезжает.
#9
by Ёпрст
так делать категорически не верно. Будет полная каша в проводках/движениях регистра. Так что, весь код в топку смело.
#10
by Ёпрст
При активной транзакции, из базы всегда будут считываться старые движения документов, и толку от такого проведения - нуль.
#11
by rt0107
не вижу разницы от исходного варианта, ведь если что не так - до СчетчикПлюс все равно не докатится - на Возврат наступит. хотелось избавиться от проверки счетчика, общая обработка достаточно сложна. А в чем грубость в выносе повторяющегося кода в отдельную функцию? Док.Провести может трапнуться, и его палюбасу нужно в Попытку оборачивать. Тоже повод для выноса кода в отдельную функцию. А как верно? Вообще от транзакций отказаться? А как работает штатное восстановление границы последовательности?
#14
by rt0107
Но ведь согласись, что при восстановлении ГП в базу запись изменений проходит не сразу, нечто вроде транзакций используется. Иначе оно б не выполнялось с такой скоростью. Опять-таки, я там не слишком вкурил, в каком порядке штатное восстановление ГП документы выбирает для проведения, оно нифига не согласуется с позицией документа. А вот сейчас проверю.
#16
by rt0107
рапортует Получено движение Заявка покупателя 0000000292 (21.02.07) Движений нет - тест выборки в транзакции успешен что я не так делаю?
#18
by FN
Что-то ты путаешь. Сделал эксперимент: На складе есть 50 шт товара. Делаю два не проведенных расходных документа по 30 шт, провожу их в одной транзакции и на втором документе срабатывает контроль остатков. ЧЯДНТ?
#20
by rt0107
Классный аргумент, позитивный. Даже настроение поднялось. И черт с ней, с производительностью. Согласен.
#22
by Ёпрст
Быстрее чем через меню операции - не сделаешь, у тебя всегда проведение задним числом при коде в , ===> всегда временный расчет регистров, заместо того, чтоб сразу брать актуальные итоги.
#23
by rt0107
Окей, пусть там криво и вообще неправильно. Как правильно и быстро перепровести пакет документов при том, что все перепроводить не нужно, а лишь часть? Например: в сегодняшнем конкретном случае требовалось в ТиС перепровести все заявки на склад, по которым были остатки по регистру резервов. Сделал, отказавшись от транзакций, но интерес к теме есть и на будущее. Расставить документы по дате, и перед проведением каждого документа гонять ТА?
#25
by FN
да все правильно. так и надо перепроводить небольшими транзакциями. Просто ты где-то что-то напутал в коде. Упрости код до и проверь
#26
by Torquader
Всё прекрасно проводится в небольших транзакциях и ещё в момент работы с базой других пользователей (правда, последние говорят, что база жутко тормозит).
Тэги: 1С 7.7 и ранее
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- v7: v7 : НДС при возврате
- v7: Что нужно чтоб подключить ККМ Меркурий 112F к 1с V7 Торговля + склад
- v7: v7.7 премещение элемента справочника
- v7: v8: v7: Кто-нибудь сумел скачать комплект отчетности за I квартал 2007 года
- v7: 1С V7.7 в сети
- v7: 1C:V7 starter program (for SQL) - обнаружена ошибка
- v7: Узнать активна ли транзакция
- v7: Можно ли одну и ту же номенклатуру определить в разные группы?
- v7: Перенос данных Бухгалтерия из v7 в v8
- v7: v7 Перехват глобального события ПриЗаписи() или ОбработкаПроведения()
В этой группе 1С
- Работа клавиатуры в подборе и сортировка по характеристикам УТ 10.3
- Начальные остатки по уплате страховых взносов
- Управление торговлей 10.3 Заказ поставщику
- УНФ. Общий журнал документов
- УТ10. Обмен между разными базами через РИБ со снятием галочки "РИБ"
- v7: 1С 77 Нумерация документов
- Как определить, находится ли строка табличного поля в режиме редактирования?
- данный вариант программы не может работать с sql-базой данных
- ЗУП не разворачиваются окна
- В УПП 1.3.15 настройки для отчета "Расчетная ведомость" не работают!
- Бизнес процесс: Согласования разными пользователями
- V82.ComConnector на стороне x64 сервера ?
- v8: Как настроить автоматическое копирование 1с?( файловая версия)
- v7: Вставка колонки в "середину" таблицы значений
- ЗУП настройка счета 68.1
- v8: УПП Ошибка при отмене проведения
- v8: 1С сервер х64 на системе х32
- СКД. Вычислить среднедневной остаток.
- v7: EQLProc. Как при оплате указать форму оплаты "безнал"
- Вопрос по Frontol CE