8.х пробую хоть чуть-чуть разобраться с скд

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем Muggsy, 16 окт 2009.

  1. TopicStarter Overlay
    Muggsy
    Offline

    Muggsy одно ЭС

    Регистрация:
    10 сен 2008
    Сообщения:
    243
    Симпатии:
    0
    Баллы:
    26
    пишу такой простой запрос:
    Код:
    ВЫБРАТЬ
    ТоварыНаСкладахОстаткиИОбороты.СтоимостьНачальныйОстаток,
    ТоварыНаСкладахОстаткиИОбороты.СтоимостьПриход,
    ТоварыНаСкладахОстаткиИОбороты.СтоимостьОборот,
    ТоварыНаСкладахОстаткиИОбороты.СтоимостьРасход,
    ТоварыНаСкладахОстаткиИОбороты.СтоимостьКонечныйОстаток
    ИЗ
    РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, Регистратор, , ) КАК ТоварыНаСкладахОстаткиИОбороты
    ГДЕ
    (&Пустая
    ИЛИ ТоварыНаСкладахОстаткиИОбороты.Номенклатура.СчетУчета = &счетучета)
    И ТоварыНаСкладахОстаткиИОбороты.Регистратор.Организация = &орг
    
    
    В закладке ресурсы все поля переношу п поле
    и на закладке настройки-параметры данных ставлю галочку "отображать недоступные параметры"
    тогда она выводит не только НачалоПериода и конецпериода но и параметры орг, счет учета и пустая
    когда его запускаю, жму на кнопку настройки и вижу что там можно только 2 первых параметра задать
    а остальные где?????
    и как сделать так, что эти самые параметры выводились на форму сразу, а то боюсь тупые пользователи не догадаются где чего задавать
    ну еще хотелось бы узнать, как сразу задать зхначения параметров по умолчанию?
  2. mialord
    Offline

    mialord Модераторы Команда форума Модератор

    Регистрация:
    31 июл 2009
    Сообщения:
    5.398
    Симпатии:
    40
    Баллы:
    54
  3. TopicStarter Overlay
    Muggsy
    Offline

    Muggsy одно ЭС

    Регистрация:
    10 сен 2008
    Сообщения:
    243
    Симпатии:
    0
    Баллы:
    26
    нимагу!!!!!!!! у меня такой интернет плохой, что буду целый день качать и скорее всего не скачаю!
    глупость что-ли написала?
  4. ЧКДзержинский
    Offline

    ЧКДзержинский Опытный в 1С

    Регистрация:
    7 дек 2006
    Сообщения:
    487
    Симпатии:
    3
    Баллы:
    29
    Параметры НачалоПериода и КонецПериода не нужно указывать в запросе, СКД сам эти параметры предоставит настроить. Чтобы задать этим параметрам значения из формы, нужно воспользоваться коллекцией: КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы

    Например:

    Код:
    КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы[0].Использование = Истина;
    КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы[0].Значение = КонецДня(КонецПериода);	
    
    В приведенном выше примере первым элементом коллекции является параметр "КонецПериода". Чтобы узнать, какие параметры доступны для настройки из формы и в каком порядке они расположены в коллекции КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы, воспользуйтесь отладчиком.
  5. TopicStarter Overlay
    Muggsy
    Offline

    Muggsy одно ЭС

    Регистрация:
    10 сен 2008
    Сообщения:
    243
    Симпатии:
    0
    Баллы:
    26
    мммм а где мне это искать....... у меня только схема компановки данных и больше ничего нет
  6. ЧКДзержинский
    Offline

    ЧКДзержинский Опытный в 1С

    Регистрация:
    7 дек 2006
    Сообщения:
    487
    Симпатии:
    3
    Баллы:
    29
    Создаете форму, помещаете на нее два элемента типа Дата, затем в модуле формы создаете процедуру МояСКД() и вставляете вызов этой процедуры в обработчики ПриИзменении ваших элементов (которые типа Дата). Если вы хотите получить коллекцию элементов, доступных для настройки, то поместите в вашу процедуру какой-нибудь код, например Сообщить("привет мир");, установите на нее точку останова и в режиме "Предприятие", задайте какое-нибудь значение в одном из ваших элементов диалога, ну и в режиме отладчика просмотрите коллекцию КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы
  7. mialord
    Offline

    mialord Модераторы Команда форума Модератор

    Регистрация:
    31 июл 2009
    Сообщения:
    5.398
    Симпатии:
    40
    Баллы:
    54
    Дело в том что тут очень много на самом деле описывать, давайте тогда пройдемся по азам :unsure: , но книгу советую скачать и прочитать.

    1. Все необходимые парметры, используемые в запросе скд самостаятельно вытащит, указывать не надо, но можно ими моневрировать, смотрите
    Посмотреть вложение 2803

    В данном рисунке указаны параметры периодов, дату начала и дату окончания я использую в запросе (3 и 4), скд самостоятельно вытащило их. Две даты начало и окончание периода, это параметры которые принадлежат регистру накопления и хоть я их не указывал, они автоматически поместились в доступные параметры. Если Вам не нужен какой - нибудь из параметров, установите флажок "Ограничение доступности" и снимите фложок "Включать в доступные поля". Также можно завести свое параметры, в данном случае таким параметров является параметр Период.

    2. Как связать элементы, размещенные на ыорме, и параметры скд. Смотрите, вот наши период и даты, элементы размещены на форме

    Посмотреть вложение 2804

    Прописываем установку параметров в процедуры

    Код:
    Процедура ПриОткрытии()
    
    // Установка периода
    ПериодКомпоновки = КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("Период");
    ИндексПараметраВКоллекции = КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Индекс(ПериодКомпоновки);
    КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы[ИндексПараметраВКоллекции].Значение = Период;
    
    КонецПроцедуры
    
    При изменении дат периодом

    Код:
    Процедура ВыбПериодНажатие(Элемент)
    НастройкаПериода = Новый НастройкаПериода;
    НастройкаПериода.УстановитьПериод(Период.ДатаНачала, ?(Период.ДатаОкончания='0001-01-01', Период.ДатаОкончания, КонецДня(Период.ДатаОкончания)));
    НастройкаПериода.РедактироватьКакИнтервал = Истина;
    НастройкаПериода.РедактироватьКакПериод = Истина;
    НастройкаПериода.ВариантНастройки = ВариантНастройкиПериода.Период;
    Если НастройкаПериода.Редактировать() Тогда
    Период.ДатаНачала = НастройкаПериода.ПолучитьДатуНачала();
    Период.ДатаОкончания = НастройкаПериода.ПолучитьДатуОкончания();
    УстановитьПериод();
    КонецЕсли;
    КонецПроцедуры
    
    Элементы формы ДатаНачала и ДатаОкончания связаны с данными периода
    Элемент ДатаНачала Данные Период.ДатаНачала
    Элемент.ДатаОкончания Данные Период.датаОкончания

    Вообще, вариаций очень много, что да как Вы будете использовать, дело только за Вами. Удачи!

    Вложения:

    • 1.JPG
      1.JPG
      Размер файла:
      48,9 КБ
      Просмотров:
      136
    • 2.JPG
      2.JPG
      Размер файла:
      40,5 КБ
      Просмотров:
      108
  8. TopicStarter Overlay
    Muggsy
    Offline

    Muggsy одно ЭС

    Регистрация:
    10 сен 2008
    Сообщения:
    243
    Симпатии:
    0
    Баллы:
    26
    ох спасибо большое, пошла пробовать :) может что хорошее выйдет 6)
  9. TopicStarter Overlay
    Muggsy
    Offline

    Muggsy одно ЭС

    Регистрация:
    10 сен 2008
    Сообщения:
    243
    Симпатии:
    0
    Баллы:
    26
    ну вот удалось параметры вывести на форму....... только он данные не выводит :)
  10. ЧКДзержинский
    Offline

    ЧКДзержинский Опытный в 1С

    Регистрация:
    7 дек 2006
    Сообщения:
    487
    Симпатии:
    3
    Баллы:
    29
    Что значит "данные не выводит"? Какие данные? Что не выводит?
  11. TopicStarter Overlay
    Muggsy
    Offline

    Muggsy одно ЭС

    Регистрация:
    10 сен 2008
    Сообщения:
    243
    Симпатии:
    0
    Баллы:
    26
    ну выводит период
    выводит организацию
    счет учета не выводит и дальше таблицу не выводит, толи я забыла что-то прописать(данные в регистре имеются), в общем сижу разбираюсь
    см картинку

    Вложения:

  12. ЧКДзержинский
    Offline

    ЧКДзержинский Опытный в 1С

    Регистрация:
    7 дек 2006
    Сообщения:
    487
    Симпатии:
    3
    Баллы:
    29
    Я эту проблему решал так:
    у меня в запросе полю "Свойство" присваивалось &ВыбСвойство.
    В СКД на самой первой закладке ("Набор данных") в строке поля "Свойство" я установил галочки в третьей колонке данных во второй колонке флажков (и верхний и нижний), а в шестой колонке таблице в поле "Параметр" я ввел [&ВыбСвойство] и после этого этот параметр стал доступен в коллекции КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.
    В общем откройте СКД и на первой закладке найдите поле СчетУчета, установите нужные флажки и присвойте параметр.

Поделиться этой страницей