Сохранение документа только в случае его редактирования
По теме из базы знаний
- Комплексный контроль остатков. Для одного или сразу нескольких логически связанных регистров накопления. Универсальное решение уровня данных для контроля не только складских остатков
- Загрузка чеков ФНС в документы 1С:БП, 1С:УНФ, 1С:ERP, 1С:КА и 1С:УТ
- Проверка документов
- Этапы обработки документов для участков Склад и Бухгалтерия для 1С:Бухгалтерия 3.0
- Универсальный журнал документов
Ответы
В избранное
Подписаться на ответы
Сортировка:
Древо развёрнутое
Свернуть все
(1) Смотрите процедуры перед открытием и при открытие.
Видимо прописан код для заполнения, но не проверяется на новый или какие то расчеты ведутся, которые потом не требуется сохранять.
P.S. У Вас видимо самописная или переделанная, в типовых такого нет.
Видимо прописан код для заполнения, но не проверяется на новый или какие то расчеты ведутся, которые потом не требуется сохранять.
P.S. У Вас видимо самописная или переделанная, в типовых такого нет.
(4) вот что есть в процедуре при открытии
Процедура ПриОткрытии()
//ОтветственныйИсполнитель = Справочники.Пользователи.НайтиПоНаименованию(ПользователиИнформационнойБазы.ТекущийПользователь().Имя);
//НачалоНумерации = 1;
//Записать(); ////Не делаю, потому что может открыть только для просмотра другой пользователь, а его запишет
//Если Не ЭтоНовый() Тогда
// Для каждого строч из Материалы Цикл
// строч.КоличествоАнализ =строч.РасходПоФакту;
// КонецЦикла;
//Иначе
// Для каждого строч из Материалы Цикл
// строч.КоличествоАнализ =0;
// КонецЦикла;
// ОтветственныйИсполнитель = Справочники.Пользователи.НайтиПоНаименованию(ПользователиИнформационнойБазы.ТекущийПользователь().Имя);
//КонецЕсли;
//
Если РольДоступна("ПолныеПрава") или РольДоступна("ПЭО") Тогда
ЭлементыФормы.Панель1.Страницы.Страница3.Видимость = Истина;
ЭлементыФормы.КоманднаяПанель3.Доступность = Истина;
Иначе
ЭлементыФормы.Панель1.Страницы.Страница3.Видимость = Ложь;
КонецЕсли;
Если РольДоступна("ПЭО") Тогда
//ЭлементыФормы.Панель1.Страницы.Страница1.Доступность = Ложь;
//ЭлементыФормы.Панель1.Страницы.Страница1.Доступность = Ложь;
ЭлементыФормы.Материалы.Доступность = Ложь;
ЭлементыФормы.ПереченьЗаказов.Доступность = Ложь;
ЭлементыФормы.Номер.Доступность = Ложь;
ЭлементыФормы.Дата.Доступность = Ложь;
ЭлементыФормы.НачалоНумерации.Доступность = Ложь;
ЭлементыФормы.Заказ.Доступность = Ложь;
ЭлементыФормы.ДатавВыгрузкиВБухгалтерию.Доступность = Ложь;
ЭлементыФормы.ОднимДокументом.Доступность = Ложь;
ЭлементыФормы.ДоговорСбытаСКоторогоСписываем.Доступность = Ложь;
ЭлементыФормы.ИсходныйДокумент.Доступность = Ложь;
ЭлементыФормы.СписокПокупных.Доступность = Ложь;
ЭлементыФормы.ЗаказКонструкторский.Доступность = Ложь;
ЭлементыФормы.Договор.Доступность = Ложь;
ЭлементыФормы.КоличествоЗаказов.Доступность = Ложь;
ЭлементыФормы.ДействияФормы.Кнопки.Формирование.Доступность = Ложь;
ЭлементыФормы.ДействияФормы.Кнопки.ПронумероватьАкты.Доступность = Ложь;
ЭлементыФормы.ДействияФормы.Кнопки.Действие6.Доступность = Ложь;
ЭлементыФормы.ДействияФормы.Кнопки.ПроставитьАртикул.Доступность = Ложь;
ЭлементыФормы.ДействияФормы.Кнопки.Действие.Доступность = Ложь;
КонецЕсли;
Если ДоговорСбытаСКоторогоСписываем.Пустая() Тогда
ЗаполнятьИзРезерва = Ложь;
ЭлементыФормы.ЗаполнятьИзРезерва.Доступность = Ложь;
КонецЕсли;
КонецПроцедуры
Показать
(8)
Так делать нежелательно, перенесите данный кусок кода перед записью. Тогда перед тем как записать документ, будет выставлен нужный флаг всегда.
Ну и соответственно при изменение реквизитов влияющих на договор, тоже прописать.
Сделать общую процедуру и вписать где надо.
Если ДоговорСбытаСКоторогоСписываем.Пустая() Тогда
ЗаполнятьИзРезерва = Ложь; //вот этот кусок кода взводит модифицированность объекта.
ЭлементыФормы.ЗаполнятьИзРезерва.Доступность = Ложь;
КонецЕсли;
Так делать нежелательно, перенесите данный кусок кода перед записью. Тогда перед тем как записать документ, будет выставлен нужный флаг всегда.
Ну и соответственно при изменение реквизитов влияющих на договор, тоже прописать.
Сделать общую процедуру и вписать где надо.
Для начала Вам нужно понять, что именно определяет для программы то, что документ был изменен, хотя по факту никаких изменений не произошло. Один из вариантов - запустите отладку и поставьте точку останова на процедуру ПриОткрытии в модуле формы, откройте табло и пропишите в нем "Модифицированнось". Вначале табло должно показывать значение "ложь". Далее нажимайте клавишу F10 и внимательно следите, в какой момент модифицированность станет "истина". Когда найдете процедуру-виновника, можно будет уже не гадать и действовать решительно :)
Вакансии
Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)