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

Автор Тема: Ошибка в процедуре обработки  (Прочитано 4929 раз)

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

Оффлайн proofet

  • **
  • Сообщений: 66
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-02-11
  • Сайт: 
  • Профессия: Ученик 1С
Помогите разобраться, в чем ошибка. Вроде все должно работать след. образом: в поле выбора выбирается контрагент. У каждого контрагента есть ТЧ, в которой есть реквизит "ТорговыеТочки". После нажатия на кнопку табличная часть контрагента должна "очиститься". И при этом пользователю должно выводиться сообщение какие именно Торговые точки у выбранного контрагента были удалены...Не получается правильно ссылаться на них..Пожалуйста укажите ошибку в процедуре.


Процедура КнопкаВыполнитьНажатие(Кнопка)
   Если Контрагенты.ПустаяСсылка() Тогда
   КонтрагентТТ=ЭлементыФормы.Контрагенты.Значение.ПолучитьОбъект();
 

Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
  |    ТорговыеТочки
  |ИЗ
  |    Справочник.Контрагенты.ТорговыеТочки,
  |ГДЕ
  |    Ссылка = &парамКонтрагент";
   
Запрос.УстановитьПараметр("парамКонтрагент", Контрагенты);


Результат = Запрос.Выполнить();

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

Возврат;

КонецЕсли;

Выборка = Результат.Выбрать();

Пока Выборка.Следующий() Цикл

Сообщить("Будут удалены следующие ТТ: "+Выборка.ТорговыеТочки);

КонецЦикла;
КонтрагентТТ.ТорговыеТочки.Очистить();
КонтрагентТТ.Записать();
КонецЕсли;

КонецПроцедуры
(процедура в обработке, поле выбора и кнопка на форме обработки).


 Выдает ошибку:
{Обработка.УдалитьТТ.Форма.Форма(21)}: Метод объекта не обнаружен (ПустаяСсылка)
      Если Контрагенты.ПустаяСсылка() Тогда    :dfbsdfbsdf:


Оффлайн Klyacksa

  • Фрилансер. Милости прошу с задачами в личку.
  • Глобальный модератор
  • *****
  • Сообщений: 1325
  • РЕПУТАЦИЯ: 430
  • КПД: 32%
  • Регистрация: 2010-08-20
  • Сайт: 
  • Профессия: Программист 1С
Что у тебя такое "Контрагенты"?
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

Оффлайн Klyacksa

  • Фрилансер. Милости прошу с задачами в личку.
  • Глобальный модератор
  • *****
  • Сообщений: 1325
  • РЕПУТАЦИЯ: 430
  • КПД: 32%
  • Регистрация: 2010-08-20
  • Сайт: 
  • Профессия: Программист 1С
Ладна, буду догадываться. "Контрагенты" - это ПолеВвода типа СправочникСсылка.Контрагенты.
Тогда нужно проверять на заполненность следующим образом:
Если ЗначениеЗаполнено(ЭлементыФормы.Контрагенты.Значение) Тогда
И еще, при пустой таб.части ТорговыеТочки, чтобы понятно было, что по нажатию на кнопку процедура отработала, я бы добавила сообщение:
Если Результат.Пустой() Тогда
    Сообщить("У выбранного Контрагента нет торговых точек.");
    Возврат;
КонецЕсли;
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
"Метод объекта не обнаружен" выдается если Контрагенты = Неопределено.

Еще вопрос: почему КонтрагентЫ?
Может имеем дело со списком?
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн proofet

  • **
  • Сообщений: 66
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-02-11
  • Сайт: 
  • Профессия: Ученик 1С
Контрагенты -  ПолеВыбора на форме.
Klyacksa - спасибо большое за поправки, внесу изменения... Но суть вопроса не в том...У меня именно не получается выводить список удаляемых из ТЧ ТорговыхТочек...не правильно ссылаюсь похоже на них...

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
Да все на первый взгляд правильно...

Файл выгрузки базы - в студию!
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн Klyacksa

  • Фрилансер. Милости прошу с задачами в личку.
  • Глобальный модератор
  • *****
  • Сообщений: 1325
  • РЕПУТАЦИЯ: 430
  • КПД: 32%
  • Регистрация: 2010-08-20
  • Сайт: 
  • Профессия: Программист 1С
Вы писали, что ругается на вторую приведенную строчку. Я написала, как поправить. На что ругается теперь? :)
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
Вот как-то так должно быть:

Процедура КнопкаВыполнитьНажатие(Кнопка)
   
   Контрагенты = ЭлементыФормы.Контрагенты.Значение;
   
   Если ЗначениеЗаполнено(Контрагенты) Тогда
      КонтрагентОбъект = Контрагенты.ПолучитьОбъект();
      
      Запрос = Новый Запрос;
      Запрос.Текст = "ВЫБРАТЬ
                     |   КонтрагентыТорговыеТочки.ТорговыеТочки
                     |ИЗ
                     |   Справочник.Контрагенты.ТорговыеТочки КАК КонтрагентыТорговыеТочки
                     |ГДЕ
                     |   КонтрагентыТорговыеТочки.Ссылка = &парамКонтрагент";
      
      Запрос.УстановитьПараметр("парамКонтрагент", Контрагенты);
      
      
      Результат = Запрос.Выполнить();
      
      Если Результат.Пустой() Тогда
         
         Сообщить("Торговые точки отсутствуют");
         Возврат;
         
      КонецЕсли;
      
      Выборка = Результат.Выбрать();
      
      Сообщить("Удаляются торговые точки контрагента "+Контрагенты+":");
      
      Пока Выборка.Следующий() Цикл
         
         Сообщить("- "+Выборка.ТорговыеТочки);
         
      КонецЦикла;
      КонтрагентОбъект.ТорговыеТочки.Очистить();
      КонтрагентОбъект.Записать();
      
      Сообщить("Торговые точки успешно удалены.");
      
   Иначе
      
      Сообщить("Не выбран контрагент!");
      
   КонецЕсли;
           
КонецПроцедуры
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
Запрос в ПриОткрытии переделайте так:

Процедура ПриОткрытии()
   Запрос=Новый Запрос;
    Запрос.Текст="ВЫБРАТЬ
                 |   Контрагенты.Ссылка
                 |ИЗ
                 |   Справочник.Контрагенты КАК Контрагенты
                 |ГДЕ
                 |   Контрагенты.ЭтоГруппа = ЛОЖЬ
                 |АВТОУПОРЯДОЧИВАНИЕ";
   
    масКонтрагенты=Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка");
    ЭлементыФормы.Контрагенты.СписокВыбора.ЗагрузитьЗначения(масКонтрагенты);
КонецПроцедуры
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн proofet

  • **
  • Сообщений: 66
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-02-11
  • Сайт: 
  • Профессия: Ученик 1С
Оо..всё таки запрос был не правильный....Спасибо большое за помощь!


Теги:
 

При открытии обр-ки в "Предприятии" есть ошибка, а в "Отладке" нет

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

Ответов: 2
Просмотров: 4545
Последний ответ 21 Сен 2011, 17:35
от proofet
ошибка "Невозможно обработать параметр "ПрофильПолномочийПользователя""

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

Ответов: 5
Просмотров: 6104
Последний ответ 06 Июн 2012, 09:15
от lindelu
Синтаксическая ошибка "В" Номенклатура.Ссылка = <<?>> В ИЕРАРХИИ(&Ссылка)

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

Ответов: 4
Просмотров: 4214
Последний ответ 28 Апр 2014, 15:53
от maskito
При создании нового документа "Заявка на кассовый расход" Ошибка "Значение 9 поля "номер" не уникально

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

Ответов: 14
Просмотров: 8533
Последний ответ 22 Ноя 2014, 04:50
от cska-fanat-kz
Ошибка при загрузке данных через (Обработка "Выгрузка и загрузка данных XML")

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

Ответов: 1
Просмотров: 8574
Последний ответ 26 Апр 2012, 23:08
от Dethmontt

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

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

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


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

* Реклама

* Поиск

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

* Реклама

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

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
157 Сообщений
ilyay ilyay
66 Сообщений
alex0402
53 Сообщений
AIFrame
47 Сообщений
andron81_81
44 Сообщений
oleg-x
44 Сообщений
BuhRust
33 Сообщений
MuI_I_Ika MuI_I_Ika
32 Сообщений
Golickoff Golickoff
31 Сообщений
Dima Dddd Dima Dddd
24 Сообщений

* Кто онлайн

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

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal