Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2, свеженьких 1
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Контроль при записи документа          
Noviscok Подменю пользователя
сообщение 19.10.17, 7:32
Сообщение #1

Молчаливый
*
Группа: Пользователи
Сообщений: 6
Спасибо сказали: 0 раз
Рейтинг: 0

Стоит задача: что нельзя записывать более одного документа за одну дату. (Выдавать предупреждение и не позволять записывать). Как это сделать?

Bernet Подменю пользователя
сообщение 19.10.17, 8:09
Сообщение #2

Ветеран
Иконка группы
Группа: Местный
Сообщений: 858
Из: Місто щасливих людей
Спасибо сказали: 319 раз
Рейтинг: 0

Noviscok @ Сегодня, 8:32 * ,
В модуле объекта в обработчике "ПередЗаписью" добавляете такое:
Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
    
    Запрос = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ
    |    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ВАШДОКУМЕНТ.Ссылка) КАК Колво
    |ИЗ
    |    Документ.ВАШДОКУМЕНТ КАК ВАШДОКУМЕНТ
    |ГДЕ
    |    ВАШДОКУМЕНТ.Дата МЕЖДУ &НачалоДня И &КонецДня
    |";
    
    Запрос.УстановитьПараметр("НачалоДня", НачалоДня(Дата));
    Запрос.УстановитьПараметр("КонецДня", КонецДня(Дата));
    
    Результат = Запрос.Выполнить();
    Если НЕ Результат.Пустой() Тогда // раз есть результат значит уже есть документ
        Выборка = Результат.Выбрать();
        Выборка.Следующий();
        Сообщить("В этот день уже есть "+Строка(Выборка.Колво)+" документов.");
        Отказ = Истина;
        Возврат;
    КонецЕсли;
    
КонецПроцедуры


Signature
Дописываю конфигурации на платформе 8.х.
- Управление торговым предприятием для Украины
- Управление производственным предприятием для Украины
- Управление небольшой фирмой для Украины
- Бухгалтерия для Украины;
- Общепит для Украины
- Ресторан (Рарус)
- Розница

Спасибо сказали: Noviscok, Володька,

Noviscok Подменю пользователя
сообщение 19.10.17, 8:48
Сообщение #3

Молчаливый
*
Группа: Пользователи
Сообщений: 6
Спасибо сказали: 0 раз
Рейтинг: 0

Bernet @ Сегодня, 13:09 * ,
Не могу понять пишет что поле Дата не найде

Вот дурак, разобрался. СПАСИБО ОГРОМНОЕ

logist Подменю пользователя
сообщение 19.10.17, 9:24
Сообщение #4

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0

Мне больше такой вариант нравится
   Запрос.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ ПЕРВЫЕ 1
    |  ВАШДОКУМЕНТ.Ссылка



Это не имеет смысла, т.к. документа никогда не будет больше одного.
     Выборка = Результат.Выбрать();
        Выборка.Следующий();


Сообщение отредактировал logist - 19.10.17, 9:26


Signature
Личные бесплатные консультации не даю, для этого есть форум!

Спасибо сказали: Noviscok, Володька,

Noviscok Подменю пользователя
сообщение 19.10.17, 15:29
Сообщение #5

Молчаливый
*
Группа: Пользователи
Сообщений: 6
Спасибо сказали: 0 раз
Рейтинг: 0

Цитата(logist @ 19.10.17, 14:24) *
Если НЕ Результат.Пустой() Тогда // раз есть результат значит уже есть документ

Почему пишем ЕСЛИ НЕ Результат.Пустой?

salton Подменю пользователя
сообщение 19.10.17, 15:52
Сообщение #6

Говорящий
***
Группа: Пользователи
Сообщений: 92
Из: Полтава
Спасибо сказали: 24 раз
Рейтинг: 0

Цитата(Noviscok @ 19.10.17, 16:29) *
Почему пишем ЕСЛИ НЕ Результат.Пустой?


ну если написать:

Если Результат.Пустой() Тогда


Тогда весь код будет выглядеть как:

Если Результат.Пустой() Тогда
  //ничего не происходит, можно
  Сообщить("Документов нет");
Иначе
  Выборка = Результат.Выбрать();
        Выборка.Следующий();
        Сообщить("В этот день уже есть "+Строка(Выборка.Колво)+" документов.");
КонецЕсли;


громоздко как-то... зачем нам обрабатывать ситуацию когда нет документа?

Спасибо сказали: Noviscok,

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 18.04.24, 19:44
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!