|   |   | 
| 
 | Проверка на наличие данные в ТЧ | ☑ | ||
|---|---|---|---|---|
| 0
    
        Валидатор 17.02.14✎ 13:23 | 
        управляемое приложение, самописная конфа. Есть справочник контрагенты, у него есть ТП - транспортные средства, и нужно, чтобы при добавлении нового транспортного средства, если такое уже есть у контрагента, вылезала ошибка, в обычном приложении можно было просто циклом пройтись по строкам это ТЧ и условие прописать, а как в управляемом приложении сделать это?     | |||
| 1
    
        Wobland 17.02.14✎ 13:24 | 
        так же     | |||
| 2
    
        1Сергей 17.02.14✎ 13:24 | 
        так же, на сервере     | |||
| 3
    
        butterbean 17.02.14✎ 13:24 | 
        зачем циклом если есть Найти()??     | |||
| 4
    
        Godofsin 17.02.14✎ 13:25 | 
        (3) +     | |||
| 5
    
        Валидатор 17.02.14✎ 13:25 | 
        а в каком событии использовать этот поиск у этой ТЧ?     | |||
| 6
    
        Godofsin 17.02.14✎ 13:25 | 
        И НайтиСтроки()     | |||
| 7
    
        Enders 17.02.14✎ 13:26 | 
        (3) Что б было больше строк кода :)     | |||
| 8
    
        Валидатор 17.02.14✎ 13:27 | 
        Сейчас делаю в событии 
 НаКлиенте Процедура ТранспортныеСредстваПриИзменении(Элемент) //тут по идее нужно получить нашу ТЧ, но код вида: //ТранспортныеСредства.НайтиСтроки() не дает использовать КонецПроцедуры | |||
| 9
    
        Валидатор 17.02.14✎ 13:31 | 
        ТранспортноеСредствоПоискПоНаименованию = ЭтаФорма.Элементы.ТранспортныеСредства
 так тоже не получить ТЧ | |||
| 10
    
        Валидатор 17.02.14✎ 13:41 | 
        как проверку то поставить?     | |||
| 11
    
        Wobland 17.02.14✎ 13:43 | 
        найти на сервере     | |||
| 12
    
        Валидатор 17.02.14✎ 13:45 | 
        (11) в каком событии ТЧ ?     | |||
| 13
    
        Feunoir 17.02.14✎ 13:46 | 
        (11) Ну формально ДанныеФормыКоллекция НайтиСтроки() доступно втонком клиенте. ТС не колется какая у него ошибка. 
 (9) Почему не даёт. Ошибка какая? | |||
| 14
    
        Валидатор 17.02.14✎ 13:47 | 
        (13) мне тупо не выбрать таблицу, чтобы для нее делать манипуляции какие-либо     | |||
| 15
    
        Wobland 17.02.14✎ 13:50 | 
        (14) мож, лучше поискать?     | |||
| 16
    
        Валидатор 17.02.14✎ 13:51 | 
        (15) в обычном можно было просто сразу написать имя таблицы и делать с ней, что хочешь, тут так не работает     | |||
| 17
    
        Feunoir 17.02.14✎ 13:51 | 
        (14) Сегодня понедельник. Пожалей мой мозг, напиши подробнее. Мне достаточно ребусов генерального.     | |||
| 18
    
        Feunoir 17.02.14✎ 13:51 | 
        (16) Объект.ТранспортныеСредства     | |||
| 19
    
        Wobland 17.02.14✎ 13:53 | 
        (16) а тут часто иногда всё находится в объекте     | |||
| 20
    
        Валидатор 17.02.14✎ 13:55 | 
        просто Объект, вот теперь нашлось, теперь надо сообразить, как задать ново вводимую строку?     | |||
| 21
    
        Валидатор 17.02.14✎ 13:56 | 
        НоваяСтрока = ЭтаФорма.Элементы.ТекущиеДанные так будет ново вводимая строка?     | |||
| 22
    
        Feunoir 17.02.14✎ 13:59 | 
        (21) Элементы.<имя_элемента_формы_с_ТЧ>.ТекущиеДанные     | |||
| 23
    
        Валидатор 17.02.14✎ 14:26 | 
        ТекДанные = Элементы.ТранспортныеСредства.ТекущиеДанные; 
 ПараметрыОтбора = Новый Структура; ПараметрыОтбора.Вставить("ТранспортноеСредство", ТекДанные); НайденныеСтроки = Объект.ТранспортныеСредства.НайтиСтроки(ПараметрыОтбора); не получается найти значение среди уже имеющихся | |||
| 24
    
        Wobland 17.02.14✎ 14:28 | 
        ТекДанные - это что?     | |||
| 25
    
        Валидатор 17.02.14✎ 14:29 | 
        (24) 
 ТекДанные = Элементы.ТранспортныеСредства.ТекущиеДанные; ПараметрыОтбора = Новый Структура; ПараметрыОтбора.Вставить("ТранспортноеСредство", ТекДанные.ТранспортныеСредства); НайденныеСтроки = Объект.ТранспортныеСредства.НайтиСтроки(ПараметрыОтбора); | |||
| 26
    
        Валидатор 17.02.14✎ 14:39 | 
        &НаКлиенте 
 Процедура ТранспортныеСредстваПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа) ТекДанные = Элементы.ТранспортныеСредства.ТекущиеДанные; Если ТекДанные = Неопределено Тогда Возврат КонецЕсли; ПараметрыОтбора = Новый Структура; ПараметрыОтбора.Вставить("ТранспортноеСредство", ТекДанные.ТранспортноеСредство); НайденныеСтроки = Объект.ТранспортныеСредства.НайтиСтроки(ПараметрыОтбора); Для каждого строка из НайденныеСтроки Цикл Если строка.ТранспортноеСредство = ТекДанные.ТранспортноеСредство Тогда Сообщить("такая запись уже есть"); КонецЕсли; КонецЦикла; КонецПроцедуры При добавлении второй строки, даже до выбора ТС летит ошибка что такое ТС уже есть | |||
| 27
    
        Валидатор 17.02.14✎ 14:50 | 
        &НаКлиенте 
 Процедура ТранспортныеСредстваПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа) ТекДанные = Элементы.ТранспортныеСредства.ТекущиеДанные; Если ТекДанные = Неопределено Тогда Возврат КонецЕсли; Для каждого Строка из Объект.ТранспортныеСредства Цикл Если Строка.ТранспортноеСредство = ТекДанные.ТранспортноеСредство Тогда Тогда Сообщить("такая запись уже есть"); Возврат КонецЕсли; КонецЦикла; КонецПроцедуры так тоже проверка не срабатывает | |||
| 28
    
        Валидатор 17.02.14✎ 14:55 | 
        Текущие данные у нас буду определяться той строкой, на которой мышка стоит, а нужно как то отследить значение, которое было добавлено, и потом сделать проверку, есть это значение у нас или нет еще     | |||
| 29
    
        Валидатор 17.02.14✎ 15:06 | 
        ап     | |||
| 30
    
        Валидатор 17.02.14✎ 15:14 | 
        Как получить строку, которую только добавили? а то текущие данные это строка, которая у нас выделена(     | |||
| 31
    
        DrLekter 17.02.14✎ 15:18 | 
        Если методом Добавить(), то это будет последняя строка ТЧ     | |||
| 32
    
        Валидатор 17.02.14✎ 15:20 | 
        (31) зачем мне последняя строка тч?     | |||
| 33
    
        ДенисЧ 17.02.14✎ 15:21 | 
        Попробуй на номер строки     | |||
| 34
    
        DrLekter 17.02.14✎ 16:27 | 
        (32) потому что это и будет та, которую только что добавили     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |