Отправляет email-рассылки с помощью сервиса Sendsay

RFpro.ru: 1С для программиста

  Все выпуски  

RusFAQ.ru: 1С для программиста


Новое направление Портала RusFAQ.ru:
MosHoster.ru - Профессиональный хостинг

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / 1С для программиста

Выпуск № 818
от 30.07.2008, 21:05

Администратор:Калашников О.А.
В рассылке:Подписчиков: 387, Экспертов: 39
В номере:Вопросов: 3, Ответов: 5

Нам важно Ваше мнение об этой рассылке.
Оценить этот выпуск рассылки >>


Вопрос № 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
Здравствуйте, Sol666!

Док = Документы.УстановкаЦенНоменклатуры.СоздатьДокумент();
Док.Дата = НаДату;
Док.ТипыЦен.Добавить().ТипЦен = ТипЦен1;
Док.ТипыЦен.Добавить().ТипЦен = ТипЦен2;
Док.НеПроводитьНулевыеЗначения = Истина;
Док.Ответственный = глТекущийПользователь;

Для Каждого СтрокаТЧ ИЗ ТЗТовары Цикл

РС = Док.Товары.Добавить();
РС.ТипЦен = ТипЦен1;
РС.Номенклатура = СтрокаТЧ.Номенклатура;
РС.Валюта = Валюта;
РС.Цена = СтрокаТЧ.Цена1;
РС.ЕдиницаИзмерения = СтрокаТЧ.Номенклатура.ЕдиницаХраненияОстатков;
РС.ПроцентСкидкиНаценки = СтрокаТЧ.Наценка1;

РС = Док.Товары.Добавить();
РС.ТипЦен = ТипЦен2;
РС.Номенклатура = СтрокаТЧ.Номенклатура;
РС.Валюта = Валюта;
РС.Цена = СтрокаТЧ.Цена2;
РС.ЕдиницаИзмерения = СтрокаТЧ.Номенклатура.ЕдиницаХраненияОстатков;
РС.ПроцентСкидкиНаценки = СтрокаТЧ.Наценка;
КонецЦикла;

смысл понятен надеюсь? :)
Ответ отправил: Vovchai (статус: 5-ый класс)
Ответ отправлен: 25.07.2008, 13:48
Оценка за ответ: 5
Комментарий оценки:
Спасибо, суть ясна. А можно ли сделать чтобы это две цены для разного типа цен были в одной строке?


Вопрос № 140.716
Добрый день, господа эксперты. Есть отчет, на форме кнопки выбрать все, очистить все, удалить и тому подобное. Вызывают стандартные ф-ции из глобального модуля глИзменениеПорядкаГрупп(Контекст,-1),
глПометкаТаблицыГруппировок(Контекст,1),гл
ПоказатьОбъектФильтраОтчета(Контекст)
И выдают вот такие ошибки(в приложении)

Чем это может быть вызвано?

Приложение:

Отправлен: 25.07.2008, 15:38
Вопрос задал: stahh (статус: 6-ой класс)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Краюшкин Игорь Валерьевич
Здравствуйте, stahh!

Единственное объяснение всему этому, что Группировки у Вас не является списком.
Если в форме "Группировки" все же является списком, то, скорее всего, где-то в модуле идет объявление переменной "Группировки".
Ответ отправил: Краюшкин Игорь Валерьевич (статус: Студент)
Ответ отправлен: 25.07.2008, 16:14

Отвечает: Владимир Лазурко
Здравствуйте, stahh!

В приложении есть такая строка:
Код:
Для индГруп = 1 По Группировки.РазмерСписка() Цикл
{Глобальный модуль(10592)}: Поле агрегатного объекта не обнаружено (РазмерСписка)

Эта ошибка появляется в том случае, если у переменной, описывающей объект (в данном случае метод списка значений РазмерСписка) отсутствует такой метод. Т.е. с переменной Группировки пытаются работать как со списком значений. Есть две причины: либо эта переменная не связана с объектом
Код:
 СписокЗначений:  Группировки = Созда
 тьОбъект("СписокЗначений");
, либо это ссылка на элемент формы , который был с нее удален.

Также в приведенном списке ошибок есть переменная ТаблицаМФ. Обычно это набор значений для множественого фильтра. Например,
Код:
ТаблицаМФ = Конт.ТаблицаМФ;
{Глобальный модуль(9238)}: Значение не представляет агрегатный объект (ТаблицаМФ)
явно указывает на отсутствие в форме контекста списка или таблицы с идентификатором ТаблицаМФ.

Вы пишете, что на форме есть кнопки управления списком (Выбрать все, Очистить все...). Но Вы не указали, что на форме есть поле списка. Поэтому нужно на форму добавить объект диалога "Список" (меню Вставить -> Поле) и присвоить ему идентификатор
Код:
Группировки
. Замечу, что тип списка значений принимает и "Поле со списком", но разница том, что Список многострочный.

Соответственно в модуле формы отчета убрать объявление переменной Группировки, если таковое было добавлено.

Подробности можете уточнить в мини-форуме.
С уважением, Владимир.
Ответ отправил: Владимир Лазурко (статус: Студент)
Ответ отправлен: 29.07.2008, 11:32


Вы имеете возможность оценить этот выпуск рассылки.
Нам очень важно Ваше мнение!
Оценить этот выпуск рассылки >>

Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2008, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Техподдержка портала, тел.: +7 (926) 535-23-31
Хостинг: "Московский хостер"
Поддержка: "Московский дизайнер"
Авторские права | Реклама на портале

∙ Версия системы: 5.0 alpha от 21.07.2008

Яндекс Rambler's Top100
RusFAQ.ru | MosHoster.ru | MosDesigner.ru | RusIRC.ru
Kalashnikoff.ru | RadioLeader.ru | RusFUCK.ru

В избранное