Имя: Пароль:
1C
1С v8
Проверка заполнения таблицы
0 TumenJan
 
14.08.19
07:01
Привет Всем.
Пытаюсь проверить табличную часть на заполнение ФИО. Если ФИО не заполнено, то выдать сообщение "Заполните ФИО", только после этого переходила бы на другую страницу.

Проверку делаю по кнопке "Далее":

    Вот код:       Если  ПустаяСтрока(Аудируемые) Тогда  
                         Сообщить("Выберите ФИО аудируемого!");
                         Отказ = Истина;
                         Возврат;
                         КонецЕсли;

Он выдает при нажатии кнопки "Далее"  сообщение "Выберите ФИО аудируемого!"  я выбираю ФИО, и нажимаю опять кнопку "Далее" а он опять выдает сообщение "Выберите ФИО аудируемого!" и так до бесконечности. Что здесь не так в этом коде, прошу помочь.

Конфигурация: Обычное приложение.
1 Йохохо
 
14.08.19
07:10
а рядом нет поля Аудируемый?)
2 TumenJan
 
14.08.19
07:14
Нет, всего три столбца: 1. ФИОАудируемого 2. Должность 3. Категории
3 Йохохо
 
14.08.19
07:17
(2) правильно обойти строки циклом и проверять ЗначениеЗаполнено(тСтр.ФИОАудируемого), что такое Аудируемые непонятно
4 TumenJan
 
14.08.19
07:20
как будет код выглядеть ЗначениеЗаполнено
5 catena
 
14.08.19
07:20
ПустаяСтрока(Аудируемые)
всего три столбца: 1. ФИОАудируемого 2. Должность 3. Категории

Что проверяем, что должно быть заполнено?
6 ДенисЧ
 
14.08.19
07:22
(4) "как будет код выглядеть ЗначениеЗаполнено"
Хочешь, продам кнопку F1? Правда, это очень дорого обойдётся... Но бонусом бесплатно пойдёт обучение её нажимать...
7 TumenJan
 
14.08.19
07:25
(5) Я имею таблица состоит из трех столбцов. В каждом столбце есть строки где заполняются данные
8 TumenJan
 
14.08.19
07:25
(6) А ты иди лесом, умничаешь здесь
9 Йохохо
 
14.08.19
07:25
(4) скорее всего "для каждого тСТр Из ТоУЧегоТриСтолбца Цикл ЗначениеЗаполнено(тСтр.ФИОАудируемого); КонецЦикла"
10 Йохохо
 
14.08.19
07:27
(8) а он бы тебе сказал процедура как функция или наоборот)
11 TumenJan
 
14.08.19
07:32
(10) Я новичок в 1с, не ссудите.

Для каждого тСтр.ФИОАудируемого из КатегорияРеакцияРаботника Цикл
        ЗначениеЗаполнено(тСтр.ФИОАудируемого);
        КонецЦикла;
Это правильно или нет
12 Йохохо
 
14.08.19
07:44
(11) вроде, логику надо добавить Если НЕ ЗначениеЗаполнено(тСтр.ФИОАудируемого) Тогда ЕстьОшибки = Истина; КонецЕсли; Если ЕстьОшибки Тогда Сообщить("Выберите все все все ФИО аудируемых!"); Отказ = Истина; ...
13 Йохохо
 
14.08.19
07:45
ой ну там после цикла второе условие
14 catena
 
14.08.19
07:59
(11)Троллинг детектед, в предыдущих темах вы уже демонстрировали умение работать с циклом по таблице. Учитывая грубость в (8), считаю, тему можно закрывать.
15 TumenJan
 
14.08.19
08:05
(14) Вы считаете что, с его стороны это не звучало как грубость или насмешка. Здесь вроде просят о помочь разобраться в кодах. Я написал код, а не выпрашиваю его. Просто спросил как будет выглядеть код.
16 catena
 
14.08.19
08:16
(15)Вам и ответили, что пример кода можно посмотреть в справке. Людям, неспособным прочесть справку придется иногда мириться со снисходительным отношением со стороны форума.
17 TumenJan
 
14.08.19
08:18
(6) Да, извиняюсь за свои слова. Не в обиду
18 TumenJan
 
14.08.19
08:23
(13) Для каждого тСтр.ФИОАудируемого из КатегорияРеакцияРаботника Цикл
        Если НЕ ЗначениеЗаполнено(тСтр.ФИОАудируемого) Тогда ЕстьОшибки = Истина;
        КонецЕсли;
        Если ЕстьОшибки Тогда Сообщить("Выберите все все все ФИО аудируемых!");
        Отказ = Истина;
        КонецЕсли;
        КонецЦикла;

Ошибка : {Документ.ОтчетОПроведенииАудита1.Форма.ФормаДокумента.Форма(1414,18)}: Ожидается символ '='
Не могу понять(
19 ajax_new
 
14.08.19
08:38
ЕстьОшибки инициализируй ложью
20 TumenJan
 
14.08.19
08:41
(19) как это сделать. В коде есть ошибки, не могу найти
21 ajax_new
 
14.08.19
08:45
ЕстьОшибки = Ложь;

     Для каждого тСтр.ФИОАудируемого из КатегорияРеакцияРаботника Цикл
        Если НЕ ЗначениеЗаполнено(тСтр.ФИОАудируемого) Тогда
             ЕстьОшибки = Истина;
        КонецЕсли;
        Если ЕстьОшибки Тогда Сообщить("Выберите все все все ФИО аудируемых!");
           Отказ = Истина;
        КонецЕсли;
     КонецЦикла;
22 TumenJan
 
14.08.19
08:48
(21) Все равно ошибка:

{Документ.ОтчетОПроведенииАудита1.Форма.ФормаДокумента.Форма(1416,22)}: Ожидается символ '='
     Для каждого тСтр<<?>>.ФИОАудируемого из КатегорияРеакцияРаботника Цикл (Проверка: Толстый клиент (обычное приложение))
23 Йохохо
 
14.08.19
08:49
ЕстьОшибки = Ложь;

     Для каждого тСтр из КатегорияРеакцияРаботника Цикл
        Если НЕ ЗначениеЗаполнено(тСтр.ФИОАудируемого) Тогда
             ЕстьОшибки = Истина;
        КонецЕсли;
     КонецЦикла;
        Если ЕстьОшибки Тогда Сообщить("Выберите все все все ФИО аудируемых!");
           Отказ = Истина;
        КонецЕсли;
24 ДенисЧ
 
14.08.19
08:50
Для каждого тСтр из КатегорияРеакцияРаботника Цикл

А всё-таки я настаиваю на своём предложении...
25 Йохохо
 
14.08.19
08:50
в форме воткните Автоотметканезаполненного V - красное поле будет просто и сердито
26 TumenJan
 
14.08.19
08:57
(23) Сообщение выдает "Выберите все все все ФИО аудируемых!. Но не останавливается на этой же странице. Он пропускает дальше по кнопке "Далее" с пустым не заполненным ФИО
27 Йохохо
 
14.08.19
09:01
(26) где то не обрабатывается смена страницы, работать пора) гг гл
28 TumenJan
 
14.08.19
09:19
кто поможет по удаленке плиз
29 catena
 
14.08.19
09:24
(26)А Возврат-то где? Разве смена страницы имеет свой Отказ?
30 GGDots
 
14.08.19
09:25
(28) Кнопки, страницы, проверки - как то слишком заморочено. Могу глянуть по TW - может чего посоветую
31 TumenJan
 
14.08.19
09:27
(29) Catena спасибо, все получилось. И всем спасибо кто участвовал в данной теме)
32 TumenJan
 
14.08.19
09:34
(29) Рано обрадовался. у меня несколько строк ФИО, пока все не выберу, не пропускает, а  нужно хотя бы одну строку выбрать ФИО и пропускала бы
33 TumenJan
 
14.08.19
10:07
Прошу помочь. у меня несколько строк ФИО в табличной части, пока все не выберу, не пропускает, а  нужно хотя бы одну строку выбрать ФИО и пропускала бы
34 catena
 
14.08.19
10:20
(33)Осталось придумать как гасить ЕстьОшибки, если хотя бы одно ФИО заполнено. Сложно, наверное.
35 Franchiser
 
гуру
14.08.19
10:25
Прервать вставь
36 TumenJan
 
14.08.19
10:27
(35) ЕстьОшибки = Ложь;

     Для каждого тСтр из КатегорияРеакцияРаботника Цикл
        Если НЕ ЗначениеЗаполнено(тСтр.ФИОАудируемого) Тогда
             ЕстьОшибки = Истина;
        КонецЕсли;
     КонецЦикла;
        Если ЕстьОшибки Тогда Сообщить("Выберите все все все ФИО аудируемых!");
           Отказ = Истина;
           Возврат;
        КонецЕсли;

а куда его вставить, подскажи плиз
37 Franchiser
 
гуру
14.08.19
10:29
ЕстьОшибки = Истина;
Прервать;
38 catena
 
14.08.19
10:30
(36)Ну хоть одну строчечку самостоятельно.

Есть Ошибки = Истина;
Для каждого Цикл
   Если ЗначениеЗаполнено() Тогда
      ЕстьОшибки=Ложь;
      Прервать;
   КонецЕсли;
КонецЦИкла;
39 unbred
 
14.08.19
10:32
на фото баба.пол женский.
пишет мужик.в этом вся проблема.
40 catena
 
14.08.19
10:33
(39)Да тут половина женских ников такие.
41 unbred
 
14.08.19
10:35
(40) и у всех похожие проблемы. улавливаешь?)
42 TumenJan
 
14.08.19
10:38
(40)(37) Catena и   Franchiser спасибо большое вам за помощь и обратную связь.
43 bootini
 
14.08.19
11:01
(39) и фото чужое с инета скоменизжено