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

Автор Тема: Как сделать чтобы документ не проводился при определнном условии? Подскажите.  (Прочитано 2278 раз)

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

Оффлайн vurdalak

  • ***
  • Сообщений: 229
  • РЕПУТАЦИЯ: 8
  • КПД: 3%
  • Регистрация: 2010-08-11
  • Сайт: 
  • Профессия: Ученик 1С
У меня есть условие, как сделать чтобы документ "ЗаказПоставщикам" не проводился при этом условии.
У меня есть набросы кода пока:
Товары = Объект.Товары;
СоглПост= Объект.Соглашение;
Условие = НайтиПроцСрокаПолИсп(СоглПост);
Для каждого СтрокаТабл Из Товары Цикл
СрокГодности = НайтиСрокГодности(СтрокаТабл.Серия);
ОстСрокГод = НайтиОстСрокГод(СтрокаТабл.Серия);
Если (ОстСрокГод / СрокГодности) * 100 <= Условие Тогда
ОтменитьПроведение();
КонецЕсли;

&НаСервере
Функция НайтиСрокГодности(СерияТовара) 
   
    Перем СерияДляПоиска, СсылкаНайденнойСерии;
    СерияДляПоиска = Справочники.Серии;
   СсылкаНайденнойСерии = СерияДляПоиска.НайтиПоНаименованию(СерияТовара);
    Если СсылкаНайденнойСерии = СерияДляПоиска.ПустаяСсылка() Тогда
        Возврат "Серии не найдено";
   Иначе
        Возврат СсылкаНайденнойСерии.СрокГодности;
    КонецЕсли;
   
КонецФункции 
&НаСервере
 Функция НайтиОстСрокГод(СерияТовара) 
   
    Перем СерияДляПоиска, СсылкаНайденнойСерии;
    СерияДляПоиска = Справочники.Серии;
   СсылкаНайденнойСерии = СерияДляПоиска.НайтиПоНаименованию(СерияТовара);
    Если СсылкаНайденнойСерии = СерияДляПоиска.ПустаяСсылка() Тогда
        Возврат "Серии не найдено";
   Иначе
        Возврат СсылкаНайденнойСерии.ОстСрокГод;
    КонецЕсли;
   
КонецФункции   

&НаСервере
 Функция НайтиПроцСрокаПолИсп(СоглПост) 
   
    Перем СоглДляПоиска, СсылкаНайденногоУсл;
    СоглДляПоиска = Справочники.СоглашенияСПоставщиками;
   СсылкаНайденногоУсл = СоглДляПоиска.НайтиПоНаименованию(СоглПост);
    Если СсылкаНайденногоУсл = СоглДляПоиска.ПустаяСсылка() Тогда
        Возврат "Серии не найдено";
   Иначе
        Возврат СсылкаНайденногоУсл.ПроцСрокаПолИсп;
    КонецЕсли;
   
КонецФункции

&НаСервере
Процедура ОтменитьПроведение()
ЭтотОбъект =ДанныеФормыВзначение(Объект,Тип("ДокументОбъект.ЗаказПоставщику"));
ЭтотОбъект.Записать(РежимЗаписиДокумента.ОтменаПроведения);
ЗначениеВданныеФормы(ЭтотОбъект,Объект);
КонецПроцедуры


Но так у меня не получилось.


Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
что за директивы?
это модуль формы?
ОбработкаПроведения() располагается в модуле объекта, который выполняется исключительно на сервере.
А вот у нее есть параметр Отказ, которому при ОПРЕДЕЛЕННОМ УСЛОВИИ можно установить значение Истина...
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн vurdalak

  • ***
  • Сообщений: 229
  • РЕПУТАЦИЯ: 8
  • КПД: 3%
  • Регистрация: 2010-08-11
  • Сайт: 
  • Профессия: Ученик 1С
&НаКлиенте
Товары = Объект.Товары;
СоглПост= Объект.Соглашение;
Условие = НайтиПроцСрокаПолИсп(СоглПост);
Для каждого СтрокаТабл Из Товары Цикл
    СрокГодности = НайтиСрокГодности(СтрокаТабл.Серия);
    ОстСрокГод = НайтиОстСрокГод(СтрокаТабл.Серия);
    Если (ОстСрокГод / СрокГодности) * 100 <= Условие Тогда
        ОтменитьПроведение();
        КонецЕсли;
Директива &НаКлиенте , а функции для доставания данных из справочников директива &НаСервере.
Да это модуль формы. А как можно сделать обмен данными между модулем объекта и модулем формы в таком случае?

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
1. модуль объекта "видит" реквизиты объекта... мало?
2. в любом другом случае... см. п.1
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.


Теги:
 

не находить контрагента (Выбрать * Из Документ ГДЕ контрагент = "имя контрагента")

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

Ответов: 3
Просмотров: 231
Последний ответ 23 Окт 2017, 23:14
от Ivan94
Какова взаимосвязь объектов конфигурации "Договоры" и "Документ"?

Автор DDDРаздел Пользователям "1С - Предприятие 8"

Ответов: 0
Просмотров: 4394
Последний ответ 25 Ноя 2008, 10:43
от DDD
Как можно подставлять цену из регистра сведений "Цены поставщиков" в документ"ПоступлениеТоваров" на актуальную дату? Необходимо использовать запрос в решении.

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

Ответов: 14
Просмотров: 9323
Последний ответ 24 Окт 2014, 13:30
от cska-fanat-kz
не могу вывести отображение цен в "подборе" документ "Заявка покупателя" УТ 10.3

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

Ответов: 5
Просмотров: 3900
Последний ответ 05 Окт 2015, 19:22
от Виталий Емельянов
Как программно открыть документ программно

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

Ответов: 5
Просмотров: 18999
Последний ответ 10 Ноя 2010, 14:08
от Lexius

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

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

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


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

* Реклама

* Поиск

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

* Реклама

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

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
160 Сообщений
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 Сообщений

* Кто онлайн

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal