Программирование прайс-листа

Тема в разделе "1C и всё что с ней связано", создана пользователем Artem, 11 авг 2005.

Статус темы:
Закрыта.
  1. Artem

    Artem Гость

    Ребята, подскажите пожайлусто как я могу добавить в прайс-лист колонку и артикулом товара и его происхождением (страна изготовитель)??
     
  2. Typhoon

    Typhoon Гость

    Ручками! :)
     
  3. Гость

    Раздвинь колонку "Название" в печатной форме прайса (дополнительно 2 колонки).
    Добавь в соответствующие колонки 2 переменные, согласно соседним ячейкам
    СокрЛП(Наименование):

    1 колонка: СокрЛП(Артикул)
    2 колонка: СокрЛП(Страна)

    В модуле опиши их. Примерно в строке 447 - перед строкой:
    ИсхТабл.ВывестиСекцию("Номенклатура|Название");

    Артикул = ТекЭлем.Артикул;
    Страна = ТекЭлем.СтранаПроисхождения;

    Получится следующий код:

    Наименование = ТекЭлем.ПолнНаименование + ?(Константа.ПоказыватьАртикул = 1, " " + СокрЛП(ТекЭлем.Артикул), "");
    Артикул = ТекЭлем.Артикул;
    Страна = ТекЭлем.СтранаПроисхождения;
    ИсхТабл.ВывестиСекцию("Номенклатура|Название");
     
  4. Guest

    Guest Гость

    <!--QuoteBegin-Павел+15:08:2005, 12:07 -->
    <span class="vbquote">(Павел @ 15:08:2005, 12:07 )</span><!--QuoteEBegin-->Раздвинь колонку "Название" в печатной форме прайса (дополнительно 2 колонки).
    Добавь в соответствующие колонки 2 переменные, согласно соседним ячейкам
    СокрЛП(Наименование):

    1 колонка: СокрЛП(Артикул)
    2 колонка: СокрЛП(Страна)

    В модуле опиши их. Примерно в строке 447 - перед строкой:
    ИсхТабл.ВывестиСекцию("Номенклатура|Название");

    Артикул = ТекЭлем.Артикул;
    Страна = ТекЭлем.СтранаПроисхождения;

    Получится следующий код:

    Наименование = ТекЭлем.ПолнНаименование + ?(Константа.ПоказыватьАртикул = 1, " " + СокрЛП(ТекЭлем.Артикул), "");
    Артикул = ТекЭлем.Артикул;
    Страна = ТекЭлем.СтранаПроисхождения;
    ИсхТабл.ВывестиСекцию("Номенклатура|Название");
    [snapback]23484" rel="nofollow" target="_blank[/snapback]​
    [/quote]

    посибочки - все получилось!
    А если мне нужно будет добавить "Страна Происхождения" в печать ценника. там ведь нет переменной "ТекЭлем"
     
  5. Гость

    "----А если мне нужно будет добавить "Страна Происхождения" в печать ценника. там ведь нет переменной "ТекЭлем" ----"
    :)
    Действительно нет. Тебе придется передавать данный параметр из тех форм справочника, обработки, документа, где идет печать ценника.
    Действуем на примере печати ценника из справочника номенклатуры:
    0. Сохрани конфигурацию.
    1. Открываем "ФормаСписка" справочника. Ищем процедуру
    "ПечатьЦенника()"
    2. Добавляем строку:
    ТабТоваров.НоваяКолонка("ТекЭлем"); после
    ТабТоваров = СоздатьОбъект("ТаблицаЗначений");
    получится:
    .........................
    ТабТоваров = СоздатьОбъект("ТаблицаЗначений");
    ТабТоваров.НоваяКолонка("ТекЭлем");
    ТабТоваров.НоваяКолонка("Товар");
    ТабТоваров.НоваяКолонка("Цена","Число");................
    3. Здесь же найди процедуру "ДобавитьВтаблицу(Табл, Товар, Тип)"
    4. Добавляем строку:
    Табл.ТекЭлем= Товар.ТекущийЭлемент();
    после Табл.НоваяСтрока();
    получится:
    ............................
    Табл.НоваяСтрока();
    Табл.ТекЭлем= Товар.ТекущийЭлемент();
    Табл.Товар = СокрЛП(Товар.ПолнНаименование) + ?(Константа.ПоказыватьАртикул = 1, " " + СокрЛП(Товар.Артикул), "");
    Табл.Цена = ВремЦена;
    ..........................
    5. Открываешь обработку "ПечатьЦенников". В процедуре
    "Сформировать(ТаблицаТоваров,ПечФирма)"
    добавляем
    ДобавитьЦенник(Таб, ПечФирма, ТаблицаТоваров.Товар, ТаблицаТоваров.Единица, ПечРозн, Столбик, Ряд,ТаблицаТоваров.ТекЭлем);
    вместо
    ДобавитьЦенник(Таб, ПечФирма, ТаблицаТоваров.Товар, ТаблицаТоваров.Единица, ПечРозн, Столбик, Ряд);
    6. Ищешь ДобавитьЦенник(....) и меняешь ее на
    ДобавитьЦенник(Таб, ПечФирма, ПечНаименование, ПечЕдиница, ПечРозн, Столбик, Ряд, ТекЭлем)
    вместо
    ДобавитьЦенник(Таб, ПечФирма, ПечНаименование, ПечЕдиница, ПечРозн, Столбик, Ряд)
    7. Далее в процедуре ДобавитьЦенник(...) пользуешся всеми реквизитами справочника Номенклатура через ТекЭлем.
    Например, чтобы вывести страну:
    СтранаПроисхождения = ТекЭлем.СтранаПроисхождения;
    Получится:
    ...........................
    Столбик = ?(Столбик = 0, 1 , 0 );
    Ряд = ?(Столбик = 0, Ряд + 1, Ряд);
    СтранаПроисхождения = ТекЭлем.СтранаПроисхождения;
    ............................
    Далее"СтранаПроисхождения" выводишь в ценник.

    И заработает, однако стоит повторить пункт 2,3,4 для тех мест, откуда идет печать ценников (Сделай глобальный поиск строки "ПечатьЦенника()" и увидишь, где нужно править код).
     
Загрузка...
Статус темы:
Закрыта.

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