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

Автор Тема: Взаимодействие основного документа с произвольной формой.  (Прочитано 5879 раз)

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

Оффлайн Pavel-67

  • *
  • Сообщений: 23
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-06-05
  • Сайт: 
  • Профессия: Ученик 1С
Доброе время суток. Помогите немного разобраться в коде. У меня 1С платформа 8.2 режим обычного приложения. В конфигураторе в Документе СчетНаОплатуПокупателю  я создал кнопочку с кодом и произвольную форму.

Код кнопочки:
 Форма =  ПолучитьФорму("Поликлиника", ЭтаФорма);
 Форма.РежимВыбора = Истина;
 Форма.Идентификатор = ЭтотОбъект.Ссылка; // Передаю ссылку на документ
 Форма.Открыть();

Форма открывается все хорошо, на форме есть кнопка которая должна очистить ТЧ Услуги в Документе СчетНаОплатуПокупателю

Прописал такой код:

КоличествоСтрок = Идентификатор.Услуги.Количество()-1;

Для к=0 По КоличествоСтрок Цикл
   Если Идентификатор.Услуги[КоличествоСтрок-к].Количество = 0 Тогда
      Идентификатор.Услуги.Удалить(КоличествоСтрок-к);
   КонецЕсли;
КонецЦикла;

Код отрабатывается, но удаление строк не происходит.  В режиме отладки проверял содержимое параметра Идентификатор, ссылка присутствует.

Подскажите пожалуйста, что я делаю не так?


Оффлайн Pavel-67

  • *
  • Сообщений: 23
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-06-05
  • Сайт: 
  • Профессия: Ученик 1С
Появилась мысль, найти этот документ в документах по номеру и дате, и изменить его. Затем обновить содержимое в основном документе. Но мне кажется, есть более верный способ.

Оффлайн has

  • Модератор
  • *****
  • Сообщений: 1310
  • РЕПУТАЦИЯ: 285
  • КПД: 22%
  • Регистрация: 2011-01-28
  • Сайт: 
  • Профессия: Программист 1С
Цитировать
Форма.Идентификатор = ЭтотОбъект.Ссылка; // Передаю ссылку на документ
Передаете то ссылку, а удалять необходимо из Объекта. Т.е. примерно так
КоличествоСтрок = Идентификатор.Услуги.Количество()-1;
ОбъектДокумента = Идентификатор.ПолучитьОбъект();
Для к=0 По КоличествоСтрок Цикл
   Если ОбъектДокумента.Услуги[КоличествоСтрок-к].Количество = 0 Тогда
      ОбъектДокумента.Услуги.Удалить(КоличествоСтрок-к);
   КонецЕсли;
КонецЦикла;

Оффлайн Pavel-67

  • *
  • Сообщений: 23
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-06-05
  • Сайт: 
  • Профессия: Ученик 1С
Цитировать
Форма.Идентификатор = ЭтотОбъект.Ссылка; // Передаю ссылку на документ
Передаете то ссылку, а удалять необходимо из Объекта. Т.е. примерно так
КоличествоСтрок = Идентификатор.Услуги.Количество()-1;
ОбъектДокумента = Идентификатор.ПолучитьОбъект();
Для к=0 По КоличествоСтрок Цикл
   Если ОбъектДокумента.Услуги[КоличествоСтрок-к].Количество = 0 Тогда
      ОбъектДокумента.Услуги.Удалить(КоличествоСтрок-к);
   КонецЕсли;
КонецЦикла;

К сожалению, данный код отработал так же. Безрезультативно (. В отладчике, я проверил, не присваивается количество строк переменной КоличествоСтрок, оно всегда равно 0.
ОбъектДокумента = Идентификатор.ПолучитьОбъект();
КоличествоСтрок =  ОбъектДокумента.Услуги.Количество()-1; Так тоже, без изменения.

Оффлайн has

  • Модератор
  • *****
  • Сообщений: 1310
  • РЕПУТАЦИЯ: 285
  • КПД: 22%
  • Регистрация: 2011-01-28
  • Сайт: 
  • Профессия: Программист 1С
А может у Вас в документе 1 строка, а вы получаете Количество() - 1, вот 0 и получается.

Оффлайн Pavel-67

  • *
  • Сообщений: 23
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-06-05
  • Сайт: 
  • Профессия: Ученик 1С
А может у Вас в документе 1 строка, а вы получаете Количество() - 1, вот 0 и получается.

Да я ошибся записи дублировал но не сохранял. Но Данные все равно не удаляются.

Оффлайн has

  • Модератор
  • *****
  • Сообщений: 1310
  • РЕПУТАЦИЯ: 285
  • КПД: 22%
  • Регистрация: 2011-01-28
  • Сайт: 
  • Профессия: Программист 1С
Данные не удаляются из скольки строк?

Оффлайн Pavel-67

  • *
  • Сообщений: 23
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-06-05
  • Сайт: 
  • Профессия: Ученик 1С
Данные не удаляются из скольки строк?

Ни одна из строк не удалена. Отрабатывает чисто, без ошибок. По циклу проходит.

Провал так:
Для к=0 По КоличествоСтрок Цикл
  // Если ОбъектДокумента.Услуги[КоличествоСтрок-к].Количество = 0 Тогда
      ОбъектДокумента.Услуги.Удалить(КоличествоСтрок-к);
  // КонецЕсли;
КонецЦикла;

Без изменений.

Оффлайн has

  • Модератор
  • *****
  • Сообщений: 1310
  • РЕПУТАЦИЯ: 285
  • КПД: 22%
  • Регистрация: 2011-01-28
  • Сайт: 
  • Профессия: Программист 1С

Оффлайн has

  • Модератор
  • *****
  • Сообщений: 1310
  • РЕПУТАЦИЯ: 285
  • КПД: 22%
  • Регистрация: 2011-01-28
  • Сайт: 
  • Профессия: Программист 1С
Что пишет этот код? Параметр формы имеет тип ДокументСсылка?
КоличествоСтрок = Идентификатор.Услуги.Количество()-1;
ОбъектДокумента = Идентификатор.ПолучитьОбъект();
Сообщить(Идентификатор.Услуги.Количество());
Для к=0 По КоличествоСтрок Цикл
   Если ОбъектДокумента.Услуги[КоличествоСтрок-к].Количество = 0 Тогда
      ОбъектДокумента.Услуги.Удалить(КоличествоСтрок-к);
      Сообщить(Идентификатор.Услуги.Количество());
   КонецЕсли;
КонецЦикла;


Теги: <i> 
 

Не открывает форму сохраненного документа, открывает форму нового.

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

Ответов: 1
Просмотров: 4858
Последний ответ 13 Апр 2012, 23:26
от Vit1501
Автоматическое заполнение табличной части документа из табличной части другого

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

Ответов: 6
Просмотров: 17238
Последний ответ 16 Авг 2012, 12:07
от Will
Заполнение поля табличной части документа из табличной части справочника.

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

Ответов: 3
Просмотров: 4773
Последний ответ 06 Апр 2015, 20:08
от Kurt_Wagner
Заполнение табличной части документа реквизитами табличной части справочника

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

Ответов: 1
Просмотров: 1195
Последний ответ 10 Май 2017, 20:44
от ilnur75
Добавление сведений в графу "основание" документа "ТОРГ-12"

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

Ответов: 4
Просмотров: 8274
Последний ответ 20 Авг 2013, 18:45
от Ярослав1984

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

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

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


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

* Реклама

* Поиск

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

* Реклама

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

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
171 Сообщений
alex0402
74 Сообщений
oleg-x
67 Сообщений
AIFrame AIFrame
60 Сообщений
buketov.av buketov.av
47 Сообщений
wise wise
39 Сообщений
ilyay ilyay
39 Сообщений
Анюта17
33 Сообщений
KOI8-R
32 Сообщений
Alter
30 Сообщений

* Кто онлайн

  • Точка Гостей: 736
  • Точка Скрытых: 0
  • Точка Пользователей: 13
  • Точка Сейчас на форуме:

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal