7.7 работа с word

Тема в разделе "Типовые решения "1С:Предприятие 7.7"", создана пользователем VIPOS, 27 мар 2013.

  1. TopicStarter Overlay
    VIPOS
    Offline

    VIPOS Опытный в 1С

    Регистрация:
    12 сен 2012
    Сообщения:
    565
    Симпатии:
    1
    Баллы:
    29
    добрый день уважаемые форумчане!
    Прошу вашей помощи!
    Дело в том что на принтере для этикеток повредили печатающую плату (дефект не большой, но пробел попадает как раз на штрих код), поэтому нужносместить картинку со штрихкодом и с логотип на 0,5 см левее... подскажите пож как это сделать...

    Код:
    Процедура Выполнить()
    
    Если Одежда = 1 Тогда   
    
    Word=СоздатьОбъект("Word.Application");
    //Видимость его
    Word.Visible=1;
    //добавляем новый док
    Word.Documents.Add(ПутьКФайлам+"1взрослое_М.doc");
    //активный док
    Док=Word.ActiveDocument();
    Объект = Док.Content;
    // подставляем значения по тексту договора - признак замены [] 
    Док.InlineShapes(2).OLEFormat.Object.CodeType = 1;
    Док.InlineShapes(2).OLEFormat.Object.CodeValue = СокрЛП(Лев(Код,12));
    Док.InlineShapes(2).OLEFormat.Object.Width = 132;
    Док.InlineShapes(2).OLEFormat.Object.Height = 34;
    Объект.Find.Execute("[Характеристики]",0,0,,,,,,,СокрЛП(Наименование.ПолнНаименование),2);
    Объект.Find.Execute("[Артикул]",0,0,,,,,,,СокрЛП(Наименование.Артикул),2);
    Объект.Find.Execute("[Модель]",0,0,,,,,,,СокрЛП(Наименование),2);
    Стр =  СокрЛП(Код.Размер);
    Стр = СтрЗаменить(Стр,"-",РазделительСтрок);
    Рост = СтрПолучитьСтроку(Стр,1);
    ОбхГр = СтрПолучитьСтроку(Стр,2);
    ОбхТ = СтрПолучитьСтроку(Стр,3);
    Объект.Find.Execute("[Рост]",0,0,,,,,,,СокрЛП(Рост),2);
    Объект.Find.Execute("[ОбхватГруди]",0,0,,,,,,,СокрЛП(ОбхГр),2);
    Объект.Find.Execute("[ОбхватТалии]",0,0,,,,,,,СокрЛП(ОбхТ),2);
    Объект.Find.Execute("[Сорт]",0,0,,,,,,,СокрЛП(Код.Сорт),2);
    СпрВХ = СоздатьОбъект("Справочник.юиВидыХарактеристик");
    //СпрВХ.НайтиПоНаименованию("Прочие");   
    СпрВХ.НайтиПоНаименованию("сырье");
    СпрДХН = СоздатьОбъект("Справочник.юиДопХарактеристикиНоменклатуры");
    СпрДХН.ИспользоватьВладельца(Наименование);
    СпрДХН.НайтиПоРеквизиту("ВидХарактеристики",СпрВХ.ТекущийЭлемент(),0);
    Объект.Find.Execute("[Сырье]",0,0,,,,,,,СокрЛП(СпрДХН.ЗначениеХарактеристики.Наименование),2);
    
  2. TopicStarter Overlay
    VIPOS
    Offline

    VIPOS Опытный в 1С

    Регистрация:
    12 сен 2012
    Сообщения:
    565
    Симпатии:
    1
    Баллы:
    29
    вот скрин и обработка... подскажите хотя бы в какую сторону двигаться...

    Вложения:

  3. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Сдвиньте объект BarCode в макете
  4. TopicStarter Overlay
    VIPOS
    Offline

    VIPOS Опытный в 1С

    Регистрация:
    12 сен 2012
    Сообщения:
    565
    Симпатии:
    1
    Баллы:
    29
    а можно по подробней?
  5. lazy
    Offline

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

    Регистрация:
    1 сен 2007
    Сообщения:
    2.127
    Симпатии:
    4
    Баллы:
    29
    1. Можно попробовать открыть документ "1взрослое_М.doc" и в нем сдвинуть объект штрихкода на нужную позицию и сохранить макет.
    2. можно попробовать добавить код

    Код:
    //...
    Док.InlineShapes(2).OLEFormat.Object.Height = 34;
    Док.InlineShapes(2).OLEFormat.Object.Left = 99999; // << придется играть со значениями до получения нужного результата.
    Объект.Find.Execute("[Характеристики]",0,0,,,,,,,СокрЛП(Наименование.ПолнНаименование),2);
    //...
    99999 это я конечно грубанул для наглядности, скорее всего там будет 50, или около того.
  6. TopicStarter Overlay
    VIPOS
    Offline

    VIPOS Опытный в 1С

    Регистрация:
    12 сен 2012
    Сообщения:
    565
    Симпатии:
    1
    Баллы:
    29
    Спасибо.... буду пробовать!
  7. TopicStarter Overlay
    VIPOS
    Offline

    VIPOS Опытный в 1С

    Регистрация:
    12 сен 2012
    Сообщения:
    565
    Симпатии:
    1
    Баллы:
    29
    не срабатывает 1 вариант
    а на втором на строчку
    Код:
    Док.InlineShapes(2).OLEFormat.Object.Left = 99999; // << придется играть со значениями до получения нужного результата.
    пишет неизвестная ошибка
  8. TopicStarter Overlay
    VIPOS
    Offline

    VIPOS Опытный в 1С

    Регистрация:
    12 сен 2012
    Сообщения:
    565
    Симпатии:
    1
    Баллы:
    29
    может еще у кого какие мысли будут??
  9. TopicStarter Overlay
    VIPOS
    Offline

    VIPOS Опытный в 1С

    Регистрация:
    12 сен 2012
    Сообщения:
    565
    Симпатии:
    1
    Баллы:
    29
    Всем спасибо! Проблему решил просто изменением ширины штрихкода
    Код:
    Док.InlineShapes(2).OLEFormat.Object.Width = 132;
    вместо 132 установил 100

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