Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
11 Дек 2017, 18:03
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: проверка на проведение документа  (Прочитано 6375 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн GSerge

  • *
  • Сообщений: 15
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-07-06
  • Сайт: 
  • Профессия: Ученик 1С
требуется сделать проверку Если документ проведен тогда выполнять что то...
но есть документы, как инвентаризация и у них, как я понял, нет понятия "проведен" и всегда выдает Ложь.
в этом случае должно быть Если документ записан тогда выполнять что то...
Если поставить проверку на записанный документ тогда те документы, которые могут быть проведены и не проведены тоже выполнят алгоритм. и толку от проведенного документа не будет.

Как выполнить проверку на возможность проведения?

тут есть возможность проведения документов
http://prntscr.com/7sfj0p

а тут нет(
http://prntscr.com/7sflpt

должно быть что нибудь такое:
Если можно провести документ тогда
    Если документ проведен тогда
        выполнить что то...
    КонецЕсли
Иначе
    Если документ записан тогда
        выполнить что то...
    КонецЕсли
КонецЕсли

P.S. 1с 8.3 Управление Торговлей 10.3


Оффлайн mixqn

  • Администратор
  • *****
  • Сообщений: 1346
  • РЕПУТАЦИЯ: 166
  • КПД: 12%
  • Who is John Galt?
  • Регистрация: 2012-08-15
  • Сайт: 3gmaster.net
  • Профессия: Программист 1С
Через метаданные. Отвечу подробнее позже с компьютера - приведу фрагмент кода. Со смарта проблематично это сделать

Отправлено с моего Nexus 5 через Tapatalk


Оффлайн mixqn

  • Администратор
  • *****
  • Сообщений: 1346
  • РЕПУТАЦИЯ: 166
  • КПД: 12%
  • Who is John Galt?
  • Регистрация: 2012-08-15
  • Сайт: 3gmaster.net
  • Профессия: Программист 1С
// допустим, Док - это ссылка
// пробуем получить объект: если док записан - получим объект, в противном случае - Неопределено
ДокОбъект = Док.ПолучитьОбъект();
МетаданныеДокумента = Док.Метаданные();
Если МетаданныеДокумента.Проведение = Проведение.Разрешить И Док.Проведен
ИЛИ МетаданныеДокумента.Проведение = Проведение.Запретить И ЗначениеЗаполнено(ДокОбъект) Тогда
// тут ваши действия
КонецЕсли;

Оффлайн GSerge

  • *
  • Сообщений: 15
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-07-06
  • Сайт: 
  • Профессия: Ученик 1С
// допустим, Док - это ссылка
// пробуем получить объект: если док записан - получим объект, в противном случае - Неопределено
ДокОбъект = Док.ПолучитьОбъект();
МетаданныеДокумента = Док.Метаданные();
Если МетаданныеДокумента.Проведение = Проведение.Разрешить И Док.Проведен
ИЛИ МетаданныеДокумента.Проведение = Проведение.Запретить И ЗначениеЗаполнено(ДокОбъект) Тогда
// тут ваши действия
КонецЕсли;

Попробовал. Выдал ошибку: переменная не определена (Проведение)
где взять эту переменную?

Оффлайн mixqn

  • Администратор
  • *****
  • Сообщений: 1346
  • РЕПУТАЦИЯ: 166
  • КПД: 12%
  • Who is John Galt?
  • Регистрация: 2012-08-15
  • Сайт: 3gmaster.net
  • Профессия: Программист 1С
где ваш код выполняется? в тонком клиенте? на сервере надо

Цитировать
Проведение (Posting)
Значения

Запретить (Deny)
Разрешить (Allow)

Описание:

Определяет возможность/невозможность проведения документа.

Доступность:

Сервер, толстый клиент, внешнее соединение.

Добавлено: 14 Июл 2015, 13:05

с другой стороны, у вас бы в другом месте ошибка тогда была... на строке ПолучитьОбъект()
или вы удалили ее?
Добавлено: 14 Июл 2015, 13:05

собственно и Метаданные() тоже не работает в тонком клиенте...

может приведете полный текст ошибки? как-то странно...

Оффлайн GSerge

  • *
  • Сообщений: 15
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-07-06
  • Сайт: 
  • Профессия: Ученик 1С
Цитировать
может приведете полный текст ошибки? как-то странно...

В общем я дорабатываю:
Процедура ПередЗаписьюДокументаПроверкаДоступностиПериода(Источник, Отказ, РежимЗаписи, РежимПроведения) Экспорт
в эту процедуру нужно вставить проверку.

и у меня нет сервера...

Оффлайн mixqn

  • Администратор
  • *****
  • Сообщений: 1346
  • РЕПУТАЦИЯ: 166
  • КПД: 12%
  • Who is John Galt?
  • Регистрация: 2012-08-15
  • Сайт: 3gmaster.net
  • Профессия: Программист 1С
полный текст ошибки я просил

Оффлайн GSerge

  • *
  • Сообщений: 15
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-07-06
  • Сайт: 
  • Профессия: Ученик 1С
полный текст ошибки я просил

{ОбщийМодуль.НастройкаПравДоступа.Модуль(480,30)}: Переменная не определена (Проведение)
         Если ДокМета.Проведение = <<?>>Проведение.Разрешить и Источник.Проведен или ДокМета.Проведение = РежимПроведения.Запретить и ЗначениеЗаполнено(Источник) Тогда (Проверка: Толстый клиент (обычное приложение))

Оффлайн mixqn

  • Администратор
  • *****
  • Сообщений: 1346
  • РЕПУТАЦИЯ: 166
  • КПД: 12%
  • Who is John Galt?
  • Регистрация: 2012-08-15
  • Сайт: 3gmaster.net
  • Профессия: Программист 1С
Ёлки палки, ошибка там, видимо я при ctrtl+c - ctrl+v где-то ошибся. Замените на РежимПроведения

Отправлено с моего Nexus 5 через Tapatalk


Оффлайн GSerge

  • *
  • Сообщений: 15
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-07-06
  • Сайт: 
  • Профессия: Ученик 1С
Ёлки палки, ошибка там, видимо я при ctrtl+c - ctrl+v где-то ошибся. Замените на РежимПроведения

Отправлено с моего Nexus 5 через Tapatalk

в конфигураторе ошибок нет, но в режиме предприятия при запуске этого кода ошибка:
http://prntscr.com/7sjhlh


 

Не открывает форму сохраненного документа, открывает форму нового.

Автор EHOTРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 4467
Последний ответ 13 Апр 2012, 23:26
от Vit1501
Автоматическое заполнение табличной части документа из табличной части другого

Автор WillРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 6
Просмотров: 15899
Последний ответ 16 Авг 2012, 12:07
от Will
Заполнение поля табличной части документа из табличной части справочника.

Автор Kurt_WagnerРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 3
Просмотров: 4195
Последний ответ 06 Апр 2015, 20:08
от Kurt_Wagner
Заполнение табличной части документа реквизитами табличной части справочника

Автор kaf_infoРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 616
Последний ответ 10 Май 2017, 20:44
от ilnur75
Добавление сведений в графу "основание" документа "ТОРГ-12"

Автор Ярослав1984Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 4
Просмотров: 7734
Последний ответ 20 Авг 2013, 18:45
от Ярослав1984

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
163 Сообщений
ilyay ilyay
75 Сообщений
oleg-x
56 Сообщений
alex0402
46 Сообщений
andron81_81
44 Сообщений
AIFrame
35 Сообщений
MuI_I_Ika MuI_I_Ika
33 Сообщений
Golickoff Golickoff
28 Сообщений
BuhRust
27 Сообщений
Dima Dddd Dima Dddd
26 Сообщений

* Кто онлайн

  • Точка Гостей: 570
  • Точка Скрытых: 0
  • Точка Пользователей: 11
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal