8.х Как обратиться к элементам табличной части внешней обработки

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем Семен Сосницкий, 21 июл 2014.

  1. alexburn
    Offline

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

    Регистрация:
    5 янв 2009
    Сообщения:
    14.782
    Симпатии:
    509
    Баллы:
    204
    Реквизиты формы ?
  2. TopicStarter Overlay
    Семен Сосницкий
    Offline

    Семен Сосницкий Опытный в 1С

    Регистрация:
    21 июл 2014
    Сообщения:
    163
    Симпатии:
    0
    Баллы:
    26
    Мне нужно вывести в макет длину, ширину и толщину для каждого указанного пакета. В одном пакете все доски одинаковой толщины и ширины (причем указано это не напрямую, а через сечение, типа 47*100, что тоже ссылается уже на другой справочник "сечения") но есть разные длины в одном пакете. Я уже совсем запутался, как все это вывести в цикле :(. Что в этой конструкции неправильно?
    Код:
    Для каждого Пакет Из Пакеты
            Цикл
            _номерпакета = Пакет.Пакет;
            Для каждого Количество из Справочники.ТранспортныеПакеты.СоставПакета;
                Цикл
                _количество = Справочники.ТранспортныеПакеты.СоставПакета.Количество;
                _длина = Справочники.ТранспортныеПакеты.СоставПакета.Длина;
                Секция.Параметры.НомерПакета = _номерпакета;
                Секция.Параметры.Длина = _длина;
                Секция.Параметры.Количество = _количество;
                Таб.Вывести(Секция);
                КонецЦикла;
        КонецЦикла;
    
    [​IMG]
    --- Объединение сообщений, 22 июл 2014 ---
    Блин, точнее правильнее было бы так наверное:
    Код:
    Для каждого Пакет Из Пакеты
            Цикл
            _номерпакета = Пакет.Пакет;
            Для каждого Количество из Справочники.ТранспортныеПакеты.СоставПакета;
                Цикл
                _количество = Количество.Количество;
                _длина = Количество.Длина;
                Секция.Параметры.НомерПакета = _номерпакета;
                Секция.Параметры.Длина = _длина;
                Секция.Параметры.Количество = _количество;
                Таб.Вывести(Секция);
                КонецЦикла;
        КонецЦикла;
    
    Но и это не работает
  3. nbIpKuH_BaH9I
    Offline

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

    Регистрация:
    16 сен 2009
    Сообщения:
    6.990
    Симпатии:
    399
    Баллы:
    104
    Давайте так. Вы нормально задачу всю опишите. А то уже и нам сложно ориентироваться что Вам надо. Пакеты, а потом что еще появится?!
  4. TopicStarter Overlay
    Семен Сосницкий
    Offline

    Семен Сосницкий Опытный в 1С

    Регистрация:
    21 июл 2014
    Сообщения:
    163
    Симпатии:
    0
    Баллы:
    26
    Задача состоит в следующем: для выбранных пакетов нужно, чтобы в каждую строчку макета выводились следующие данные:
    количество досок | номер пакета | толщина | ширина | длина | объем
    То есть для пакета, который изображен на картинке в моем предыдущем посте это должно выглядеть так:
    209 | 143063 | 47 | 100 | 4800 | 4,715
    1 | 143063 | 47 | 100 | 4500 | 0,021
  5. Tiger86
    Offline

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

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    вам надо вложенный цикл не по справочнику делать, а по табличной части конкретного пакета. Зачем вы обходите справочник?
    --- Объединение сообщений, 22 июл 2014 ---
    я бы вам посоветовала взять книжечку Радченко по конфигурированию для начинающих (не помню точное название), попробовать имеющиеся в ней примеры, а потом уже крутить на реальной задаче. По другому вы только наворочаете ошибок, что потом и сами не разберете
  6. TopicStarter Overlay
    Семен Сосницкий
    Offline

    Семен Сосницкий Опытный в 1С

    Регистрация:
    21 июл 2014
    Сообщения:
    163
    Симпатии:
    0
    Баллы:
    26
    Да, конечно нужно разбираться и читать литературу, это не дело. Но дело в том, что я недавно работаю, сказали не беспокойся, будешь потихоньку вникать, на курсы отправим, но тут вышла какая-то новая директива министерства таможни и мне сказали в срочном порядке это сделать. Вот я и паникую сижу, ибо сроки поджимают. И спасибо за название книжки, а то я давно искал что-нибудь написанное понятным языком. Книги "описание встроенного языка" очень уж плохо структурированны и не особо понятно написаны, там все вперемешку без особых примеров выполнения кода.
  7. Tiger86
    Offline

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

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    потратьте 1 день на указанную книжку - она большая, но в ней много примеров - за день осилите основное. Поверьте дальше пойдет куда быстрее...
  8. nbIpKuH_BaH9I
    Offline

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

    Регистрация:
    16 сен 2009
    Сообщения:
    6.990
    Симпатии:
    399
    Баллы:
    104
    Если от этого реально зависит Ваша работу, то может стоит задуматься о фрилансерах?
    Это просто синтакс-помощник в книгах потому что.
  9. TopicStarter Overlay
    Семен Сосницкий
    Offline

    Семен Сосницкий Опытный в 1С

    Регистрация:
    21 июл 2014
    Сообщения:
    163
    Симпатии:
    0
    Баллы:
    26
    Вы эту книгу имели в виду?

    [​IMG]
  10. nbIpKuH_BaH9I
    Offline

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

    Регистрация:
    16 сен 2009
    Сообщения:
    6.990
    Симпатии:
    399
    Баллы:
    104
    Да, это для начала. Все с нее начинали.
  11. TopicStarter Overlay
    Семен Сосницкий
    Offline

    Семен Сосницкий Опытный в 1С

    Регистрация:
    21 июл 2014
    Сообщения:
    163
    Симпатии:
    0
    Баллы:
    26
    А не могли бы вы меня направить, что именно нужно прочитать для моей задачи? Запросы? Просто 800 с лишним страниц за короткое оставшееся время я не успею прочитать.
  12. nbIpKuH_BaH9I
    Offline

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

    Регистрация:
    16 сен 2009
    Сообщения:
    6.990
    Симпатии:
    399
    Баллы:
    104
    Когда то я почти тоже самое у миалорда спросил :D. В ответ на это он мне скинул книг штук 10. Вам нужно учить все. Язык запросов, язык программирования 1С и т.д. Начните с Радченко. А там дальше мы подскажем.
  13. Tiger86
    Offline

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

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    Семен, не смотрите на количество страниц. Вы начните. Она читается на одном дыхании.. вся она вам сразу не нужна, по мере прочтения - вы сами поймете где пока следует притормозить и попытаться сделать вашу задачу. Не тратьте время на тыкание пальцем в небо - начните читать. Так много листингов кода. Это как говорится глаза боятся - руки делают. Все так начинали
  14. TopicStarter Overlay
    Семен Сосницкий
    Offline

    Семен Сосницкий Опытный в 1С

    Регистрация:
    21 июл 2014
    Сообщения:
    163
    Симпатии:
    0
    Баллы:
    26
    Спасибо вам всем! Потихоньку начал со всем разбираться, книгу обязательно начну читать, потом у вас еще литературы попрошу. Уже почти все получилось, осталось решить буквально один вопрос, подскажите если нетрудно. Допустим у меня есть переменная, которая хранит имя сечения. Переменная _сечение = 47*100. И в справочнике "Сечения" "47*100" является одним из значений реквизита "наименование". Еще есть реквизиты "длина" и "ширина". Есть ли какой-либо простой способ получить значения реквизитов "длина" и "ширина" для известного значения реквизита "наименование"?
  15. alexburn
    Offline

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

    Регистрация:
    5 янв 2009
    Сообщения:
    14.782
    Симпатии:
    509
    Баллы:
    204
    Если данные у вас не хранятся в РС, в ресурсах/измерениях, то будет трудоемко выцеплять из справочников, и далее обрабатывать их.
  16. TopicStarter Overlay
    Семен Сосницкий
    Offline

    Семен Сосницкий Опытный в 1С

    Регистрация:
    21 июл 2014
    Сообщения:
    163
    Симпатии:
    0
    Баллы:
    26
    Данные хранятся на сервере. А если нет простого способа получения значений из справочников, то возможно есть какой-то хитрый прием, как из строк типа "47*100" получать две численные переменные "47" и "100". В наименовании именно и хранятся искомые значения, только со знаком умножения.
  17. alexburn
    Offline

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

    Регистрация:
    5 янв 2009
    Сообщения:
    14.782
    Симпатии:
    509
    Баллы:
    204
    Тогда обрабатывать строку наименования посимвольно. Ищите знак умножения (это будет контрольная точка). От нее вправа и влево отрезаете строку. Вот вам и значения.
    Извращение ? Сами виноваты:D, есть механизм характеристик.
  18. TopicStarter Overlay
    Семен Сосницкий
    Offline

    Семен Сосницкий Опытный в 1С

    Регистрация:
    21 июл 2014
    Сообщения:
    163
    Симпатии:
    0
    Баллы:
    26
    Господа, прошу прощения за беспокойство, хотелось бы еще спросить про литературу, отдельную тему создавать не хочется. На данный момент читаю книжку Радченко, которую вы мне посоветовали, спасибо, приятная книга. Если не затруднит, не могли бы вы набросать список книг, которые следует читать после нее, и в каком именно порядке? Желательно чтобы литература была написана не слишком заумно. Напомню, я вообще только приступаю к знакомству с платформой, не только с 8 версией, а с 1с в целом. Спасибо заранее!
  19. alexburn
    Offline

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

    Регистрация:
    5 янв 2009
    Сообщения:
    14.782
    Симпатии:
    509
    Баллы:
    204
    Возьмите версию для обучения программирования, в комплекте идет книга, плюс сквозной пример создания конфы. После того как все прочитаете и сделаете, книжки сами сможете выбирать :)
  20. TopicStarter Overlay
    Семен Сосницкий
    Offline

    Семен Сосницкий Опытный в 1С

    Регистрация:
    21 июл 2014
    Сообщения:
    163
    Симпатии:
    0
    Баллы:
    26
    У меня тут несколько книг лежит, вы имеете в виду "Практическое пособие разработчика"?

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