Имя: Пароль:
1C
1С v8
почему не доступен реквизит на запись?
,
0 YamEgor
 
12.10.19
16:51
добрый день, при формировании списка документов на форме списка документа,хочу перезаписать реквизит СостояниеЗаявки и ДатаСостояния, которые были переопределены в регистре, при выполнении получаем ошибку:
{Документ.ИТС_ВходящаяЗаявкаНаТОР.Форма.ФормаСписка.Форма(36)}: Поле объекта недоступно для записи (СостояниеЗаявки)
            Строчка.СостояниеЗаявки = ВыборкаДетальныеЗаписи.СостояниеЗаявки;, и вопрос почему так , что не правильно?
&НаСервереБезКонтекста
Процедура СписокПриПолученииДанныхНаСервере(ИмяЭлемента, Настройки, Строки)
    
    МассивКлючей = Строки.ПолучитьКлючи();
    
    Запрос = Новый Запрос;
    Запрос.Текст =
        "ВЫБРАТЬ
        |    ИТС_ПодпискиТОРСрезПоследних.СостояниеЗаявки КАК СостояниеЗаявки,
        |    ИТС_ПодпискиТОРСрезПоследних.ДатаСостояния КАК ДатаСостояния
        |ИЗ
        |    РегистрСведений.ИТС_ПодпискиТОР.СрезПоследних КАК ИТС_ПодпискиТОРСрезПоследних
        |ГДЕ
        |    ИТС_ПодпискиТОРСрезПоследних.Заявка В( &Ссылка)";
    
    
    Запрос.УстановитьПараметр("ссылка",МассивКлючей) ;
    
    РезультатЗапроса = Запрос.Выполнить();
    
    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
    
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
        Для каждого Строчка Из МассивКлючей Цикл
            Строчка.СостояниеЗаявки = ВыборкаДетальныеЗаписи.СостояниеЗаявки;
            Строчка.ДатаСостояния = ВыборкаДетальныеЗаписи.ДатаСостояния;
        КонецЦикла;
        // Вставить обработку выборки ВыборкаДетальныеЗаписи
    КонецЦикла;
    
КонецПроцедуры
1 ГдеСобака Зарыта
 
12.10.19
17:05
А почему ты решил, что должен быть доступен?
2 YamEgor
 
12.10.19
17:28
(1) да я просто не знаю..
3 ГдеСобака Зарыта
 
12.10.19
17:40
Реквизиты формы только отображают данные. Менять значения нужно в самих объектах, а не их представлениях.
4 RomanYS
 
12.10.19
17:42
(3) >>Реквизиты формы только отображают данные
в (0) массив ссылок
5 ГдеСобака Зарыта
 
12.10.19
17:46
(4) Мне казалось там массив строк ДС
6 ГдеСобака Зарыта
 
12.10.19
17:47
Даже массив строк таблицы формы, отображающей ДС
7 Фрэнки
 
12.10.19
17:49
(2) А у тебя конкретная цель увидеть свой, т.е. измененный список? Принципиально используешь выбранный подход к решению задачи?

Если в принципе тебе все равно как, то реши свою задачу со списком через Динамический Список.
На свойстве Списка установи, что используется произвольный запрос и уже в нем получай все, что выше в запросе написал.

Это отличается от того, что было в Обычных формах :-)
8 Фрэнки
 
12.10.19
17:52
вот можно по ссылке с картинками посмотреть, как это пишется

https://1c.programs93.ru/articles/dinamicheskie-spiski-v-1s-na-primere-spravochnika-kontragenty/
9 RomanYS
 
12.10.19
18:03
(5) (6) Ключи ДС это не строки ДС. Ну и запрос ни с чем кроме ссылок работать не будет.
10 RomanYS
 
12.10.19
18:06
(2)
То, что не знаешь, объектную модель 1С - куда ни шло.
А вот конструкция
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
        Для каждого Строчка Из МассивКлючей Цикл ...

уже за гранью базовых/школьных навыков программирования
11 YamEgor
 
12.10.19
19:43
(7) "А у тебя конкретная цель увидеть свой, т.е. измененный список?"- Да вы правильно поняли
"Принципиально используешь выбранный подход к решению задачи?"- нет не принципиально просто стараюсь получить результат
12 YamEgor
 
12.10.19
19:45
(8) хорошо спасибо сейчас посмотрю, но пытался через динамический список не получилось, может сейчас еще раз посмотрю..
13 YamEgor
 
12.10.19
19:55
(10) Кстати, хотел спросить как у вас получается писать в поле которое выделяет ключевые слова подскажите плиз..
14 RomanYS
 
12.10.19
20:03
(13) Если вопрос про форум, то у меня только один ответ "как повезёт". Вроде рабочие теги здесь ничего внятного сказать не могу
15 YamEgor
 
12.10.19
20:06
(14) то есть вы специально не выделяете или все таки используете что то?
16 RomanYS
 
12.10.19
20:08
(15) Нет, не выделяю. Может на отступы реагирует.
17 YamEgor
 
12.10.19
20:11
я сейчас в ДС и здесь уже есть таблица документа и мне сейчас надо теперь еще регистр добавить и связи заполнить, так?
18 Фрэнки
 
12.10.19
20:22
какой там текст Запроса в ДС - если он не слишком большой - кидай
Теги для обрамления кода в латинице


- тут нарочно кирилицей
если не я не забыл еще
- и тут тоже
19 Фрэнки
 
12.10.19
20:23
когда текст кода будет слишком большой, то внутри тегов он автоматический свернётся
20 YamEgor
 
12.10.19
20:33
вот текст запроса получился

ВЫБРАТЬ
    ИТС_ВходящаяЗаявкаНаТОР.Ссылка КАК Ссылка,
    ИТС_ВходящаяЗаявкаНаТОР.ВерсияДанных КАК ВерсияДанных,
    ИТС_ВходящаяЗаявкаНаТОР.ПометкаУдаления КАК ПометкаУдаления,
    ИТС_ВходящаяЗаявкаНаТОР.Номер КАК Номер,
    ИТС_ВходящаяЗаявкаНаТОР.Дата КАК Дата,
    ИТС_ВходящаяЗаявкаНаТОР.Проведен КАК Проведен,
    ИТС_ВходящаяЗаявкаНаТОР.Организация КАК Организация,
    ИТС_ВходящаяЗаявкаНаТОР.Партнер КАК Партнер,
    ИТС_ВходящаяЗаявкаНаТОР.Контрагент КАК Контрагент,
    ИТС_ВходящаяЗаявкаНаТОР.ИдентификационныйКодЛичности КАК ИдентификационныйКодЛичности,
    ИТС_ВходящаяЗаявкаНаТОР.Ответственный КАК Ответственный,
    ИТС_ВходящаяЗаявкаНаТОР.Комментарий КАК Комментарий,
    ИТС_ВходящаяЗаявкаНаТОР.ДатаНачала КАК ДатаНачала,
    ИТС_ВходящаяЗаявкаНаТОР.ДатаЗавершения КАК ДатаЗавершения,
    ИТС_ВходящаяЗаявкаНаТОР.КоличествоВыпусков КАК КоличествоВыпусков,
    ИТС_ВходящаяЗаявкаНаТОР.Номенклатура КАК Номенклатура,
    ИТС_ВходящаяЗаявкаНаТОР.РегНомер КАК РегНомер,
    ИТС_ВходящаяЗаявкаНаТОР.Основание КАК Основание,
    ИТС_ВходящаяЗаявкаНаТОР.Автор КАК Автор,
    ИТС_ВходящаяЗаявкаНаТОР.ЗначениеEmail КАК ЗначениеEmail,
    ИТС_ВходящаяЗаявкаНаТОР.НадписьПериодичность КАК НадписьПериодичность,
    ИТС_ВходящаяЗаявкаНаТОР.Артикул КАК Артикул,
    ИТС_ВходящаяЗаявкаНаТОР.ДатаСостояния КАК ДатаСостояния,
    ИТС_ВходящаяЗаявкаНаТОР.СостояниеЗаявки КАК СостояниеЗаявки,
    ИТС_ПодпискиТОРСрезПоследних.СостояниеЗаявки КАК СостояниеЗаявкиРегистр,
    ИТС_ПодпискиТОРСрезПоследних.ДатаСостояния КАК ДатаСостоянияРегистр
ИЗ
    РегистрСведений.ИТС_ПодпискиТОР.СрезПоследних КАК ИТС_ПодпискиТОРСрезПоследних
        ЛЕВОЕ СОЕДИНЕНИЕ Документ.ИТС_ВходящаяЗаявкаНаТОР КАК ИТС_ВходящаяЗаявкаНаТОР
        ПО ИТС_ПодпискиТОРСрезПоследних.Заявка = ИТС_ВходящаяЗаявкаНаТОР.Ссылка



И он почетму то отработал без ошибок и все получилось, только форма списка сразу не обновляется нужно по F5 обновить или закрыть открыть список опять
21 YamEgor
 
12.10.19
20:35
что то  у меня с тегами не то получается
22 Фрэнки
 
12.10.19
21:09
Тег латиницей и 1C в скобках


ВЫБРАТЬ
    ИТС_ВходящаяЗаявкаНаТОР.Ссылка КАК Ссылка,
    ИТС_ВходящаяЗаявкаНаТОР.ВерсияДанных КАК ВерсияДанных,
    ИТС_ВходящаяЗаявкаНаТОР.ПометкаУдаления КАК ПометкаУдаления,
    ИТС_ВходящаяЗаявкаНаТОР.Номер КАК Номер,
    ИТС_ВходящаяЗаявкаНаТОР.Дата КАК Дата,
    ИТС_ВходящаяЗаявкаНаТОР.Проведен КАК Проведен,
    ИТС_ВходящаяЗаявкаНаТОР.Организация КАК Организация,
    ИТС_ВходящаяЗаявкаНаТОР.Партнер КАК Партнер,
    ИТС_ВходящаяЗаявкаНаТОР.Контрагент КАК Контрагент,
    ИТС_ВходящаяЗаявкаНаТОР.ИдентификационныйКодЛичности КАК ИдентификационныйКодЛичности,
    ИТС_ВходящаяЗаявкаНаТОР.Ответственный КАК Ответственный,
    ИТС_ВходящаяЗаявкаНаТОР.Комментарий КАК Комментарий,
    ИТС_ВходящаяЗаявкаНаТОР.ДатаНачала КАК ДатаНачала,
    ИТС_ВходящаяЗаявкаНаТОР.ДатаЗавершения КАК ДатаЗавершения,
    ИТС_ВходящаяЗаявкаНаТОР.КоличествоВыпусков КАК КоличествоВыпусков,
    ИТС_ВходящаяЗаявкаНаТОР.Номенклатура КАК Номенклатура,
    ИТС_ВходящаяЗаявкаНаТОР.РегНомер КАК РегНомер,
    ИТС_ВходящаяЗаявкаНаТОР.Основание КАК Основание,
    ИТС_ВходящаяЗаявкаНаТОР.Автор КАК Автор,
    ИТС_ВходящаяЗаявкаНаТОР.ЗначениеEmail КАК ЗначениеEmail,
    ИТС_ВходящаяЗаявкаНаТОР.НадписьПериодичность КАК НадписьПериодичность,
    ИТС_ВходящаяЗаявкаНаТОР.Артикул КАК Артикул,
    ИТС_ВходящаяЗаявкаНаТОР.ДатаСостояния КАК ДатаСостояния,
    ИТС_ВходящаяЗаявкаНаТОР.СостояниеЗаявки КАК СостояниеЗаявки,
    ИТС_ПодпискиТОРСрезПоследних.СостояниеЗаявки КАК СостояниеЗаявкиРегистр,
    ИТС_ПодпискиТОРСрезПоследних.ДатаСостояния КАК ДатаСостоянияРегистр
ИЗ
    РегистрСведений.ИТС_ПодпискиТОР.СрезПоследних КАК ИТС_ПодпискиТОРСрезПоследних
        ЛЕВОЕ СОЕДИНЕНИЕ Документ.ИТС_ВходящаяЗаявкаНаТОР КАК ИТС_ВходящаяЗаявкаНаТОР
        ПО ИТС_ПодпискиТОРСрезПоследних.Заявка = ИТС_ВходящаяЗаявкаНаТОР.Ссылка



А почему не обновляется - может надо в чистой форме списка с нуля попробовать? - где-то незаметная, но вредная опция задана или обработчик события подцеплен, мало ли
23 RomanYS
 
12.10.19
21:54
(22) А что ТС с ДС вообще делает? ДС вполне возможно не в курсе, что ему обновиться надо.


неужто работает)
24 YamEgor
 
13.10.19
06:06
как то странно в другой базе, копии этой базы, делаю тоже самое и выдает ошибку: Обнаружено дублирование ключевых значений в колонках "Ссылка". Отображение данных в списке не возможно.
25 RomanYS
 
13.10.19
09:59
(24) У тебя в срезе больше одной записи по заявке. Значит в регистре есть измерения кроме "Заявка".