Вопрос № 140693: Здравствуйте эксперты. У меня вопрос по 1С 7.7. Я вывожу на форму много различной информации из разных справочников, но по одному клиенту(выбираемому при открытии формы). Информацию из справочника Клиенты я получаю без проблем, а вот зайти в справочн...Вопрос № 140705: Из обработки создается документ УстановкаЦенНоменклатуры, который имеет несколько типов цен. Как получить доступ к полям Цена/ЕдИмзмерения для этих типов
цен? ...Вопрос № 140716: Добрый день, господа эксперты. Есть отчет, на форме кнопки выбрать все, очистить все, удалить и тому подобное. Вызывают стандартные ф-ции из глобального модуля глИзменениеПорядкаГрупп(Контекст,-1), глПометкаТаблицыГруппировок(Контекст,1),гл Пок...
Вопрос № 140
.693
Здравствуйте эксперты. У меня вопрос по 1С 7.7. Я вывожу на форму много различной информации из разных справочников, но по одному клиенту(выбираемому при открытии формы). Информацию из справочника Клиенты я получаю без проблем, а вот зайти в справочник договоры и вывести данные оттуда не получается. В чём может быть проблема? Заранее спасибо.
Приложение:
Отправлен: 25.07.2008, 11:21
Вопрос задала: Ольга В. (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Korolyov Alexander
Здравствуйте, Ольга В.!
Справочник договора является зависимым от справочника Контрагенты, поэтому следует использовать: ИспользоватьВладельца(<?>,); Синтаксис: ИспользоватьВладельца(<Владелец>,<ФлагИзменения>) Назначение: Установить выборку по элементу связанного справочника. Возвращает значение текущего владельца для справочника (на момент до исполнения метода). Параметры: <Владелец> - значение элемента связанного справочника, которому подчинен данный справочник. <ФлагИзменения>
- этот параметр используется только в случае использования данного метода для объектов типа ''справочник'', которые являются реквизитами формы или реквизитами диалога! Необязательный параметр. Этим флагом регулируется возможность интерактивного изменения владельца. Число: 1 - пользователь может изменить владельца интерактивно, 0 - пользователь не может интерактивно изменить владельца. Значение по умолчанию: 1.
Приложение:
--------- Читайте help
Ответ отправил: Korolyov Alexander (статус: 4-ый класс)
Ответ отправлен: 25.07.2008, 11:31 Оценка за ответ: 5 Комментарий оценки: Cпасибо за подробный ответ, только вот всё равно не работает, просто не заходит в циклы и не ищет. А почему - не понятно.
Отвечает: Fedor_sh
Здравствуйте, Ольга В.! справочник договоры подчинен справочнику контрагенты. поэтому резонно будет так исправить код СпрКонтр = СоздатьОбъект("Справочник.Контрагенты"); СпрКонтр.ИспользоватьДату(ВыбДата); Если СпрКонтр.Выбрать("Выберите клиента", "") > 0 Тогда Контра = Строка(СпрКонтр.ТекущийЭлемент()); КонецЕсли; ИНН = СпрКонтр.ИНН; КПП = СпрКонтр.КПП; ЛицСчет1 = СпрКонтр.Код; Договор = СпрКонтр.Договор;
Дог = СоздатьОбъект("Справочник.Договоры"); Дог.ИспользоватьДату(ВыбДата);
Дог.ИспользоватьВладельца(Договор); //добавлено Если Дог.НайтиПоНаименованию(Договор, 1,1) = 1 Тогда //сюда не заходит Если Дог.Выбран() > 0 Тогда Договор = Дог.ТекущийЭлемент(); Плательщик = Дог.Плательщик; Грузополучатель = Дог.Грузополучатель; Тариф = Дог.Тариф; КонецЕсли; КонецЕсли;
но это решение не корректное. вообще зачем создавать новый объект
Справочник.Договоры? для получения периодических реквизитов есть оператор "Получить"
СпрКонтр = СоздатьОбъект("Справочник.Контрагенты"); СпрКонтр.ИспользоватьДату(ВыбДата); Если СпрКонтр.Выбрать("Выберите клиента", "") > 0 Тогда Контра = Строка(СпрКонтр.ТекущийЭлемент()); КонецЕсли; ИНН = СпрКонтр.ИНН; КПП = СпрКонтр.КПП; ЛицСчет1 = СпрКонтр.Код; Договор = СпрКонтр.Договор; Если Договор.Выбран()=1 Тогда Плательщик
= Договор.Плательщик; Грузополучатель = Договор.Грузополучатель; КонецЕсли;
Ответ отправил: Fedor_sh (статус: 1-ый класс)
Ответ отправлен: 25.07.2008, 11:38 Оценка за ответ: 5 Комментарий оценки: Отлично! Теперь всё работает и выводится просто "в лучшем виде". Огромное спасибо за помощь.
Вопрос № 140.705
Из обработки создается документ УстановкаЦенНоменклатуры, который имеет несколько типов цен. Как получить доступ к полям Цена/ЕдИмзмерения для этих типов цен?
Отправлен: 25.07.2008, 13:36
Вопрос задал: Sol666 (статус: 1-ый класс)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 1)
Ответ отправил: Vovchai (статус: 5-ый класс)
Ответ отправлен: 25.07.2008, 13:48 Оценка за ответ: 5 Комментарий оценки: Спасибо, суть ясна. А можно ли сделать чтобы это две цены для разного типа цен были в одной строке?
Вопрос № 140.716
Добрый день, господа эксперты. Есть отчет, на форме кнопки выбрать все, очистить все, удалить и тому подобное. Вызывают стандартные ф-ции из глобального модуля глИзменениеПорядкаГрупп(Контекст,-1), глПометкаТаблицыГруппировок(Контекст,1),гл ПоказатьОбъектФильтраОтчета(Контекст) И выдают вот такие ошибки(в приложении)
Чем это может быть вызвано?
Приложение:
Отправлен: 25.07.2008, 15:38
Вопрос задал: stahh (статус: 6-ой класс)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Краюшкин Игорь Валерьевич
Здравствуйте, stahh!
Единственное объяснение всему этому, что Группировки у Вас не является списком. Если в форме "Группировки" все же является списком, то, скорее всего, где-то в модуле идет объявление переменной "Группировки".
Для индГруп = 1 По Группировки.РазмерСписка() Цикл {Глобальный модуль(10592)}: Поле агрегатного объекта не обнаружено (РазмерСписка)
Эта ошибка появляется в том случае, если у переменной, описывающей объект (в
данном случае метод списка значений РазмерСписка) отсутствует такой метод. Т.е. с переменной Группировки пытаются работать как со списком значений. Есть две причины: либо эта переменная не связана с объектом
, либо это ссылка на элемент формы , который был с нее удален.
Также в приведенном списке ошибок есть переменная ТаблицаМФ. Обычно это набор значений для множественого фильтра. Например,
Код:
ТаблицаМФ = Конт.ТаблицаМФ; {Глобальный
модуль(9238)}: Значение не представляет агрегатный объект (ТаблицаМФ)
явно указывает на отсутствие в форме контекста списка или таблицы с идентификатором ТаблицаМФ.
Вы пишете, что на форме есть кнопки управления списком (Выбрать все, Очистить все...). Но Вы не указали, что на форме есть поле списка. Поэтому нужно на форму добавить объект диалога "Список" (меню Вставить -> Поле) и присвоить ему идентификатор
Код:
Группировки
. Замечу, что тип списка значений принимает и "Поле со списком", но разница том, что Список многострочный.
Соответственно в модуле формы отчета убрать объявление переменной Группировки, если таковое было добавлено.
Подробности можете уточнить в мини-форуме. С уважением,
Владимир.
Ответ отправил: Владимир Лазурко (статус: Студент)
Ответ отправлен: 29.07.2008, 11:32