ЛВС печать документов в транзакции на принтер

Тема в разделе "Локальные сети (ЛВС), Hardware ("Железо"), Windows", создана пользователем vartanet, 27 фев 2012.

  1. uza
    Offline

    uza 1С, VBA (EXCEL), VB (.NET + WEB)

    Регистрация:
    10 июл 2007
    Сообщения:
    1.845
    Симпатии:
    1
    Баллы:
    29
    Решение на мильйон (если понравится - скажу куда перечислить).
    Купите КАЖДОМУ менеджеру по принтеру. Матричному. С ручной подачей (или на рулон, но без автообрезания).

    Через пару дней, когда они окончательно охфигеют - то они сплочась против вас забудут свои расприи, и будут спокойно делить один принтер, хоть на 20.5 землекопов.

    * Наибольший эффект будет достигнут, если начальник этих землекопов будет сидеть с ними в одном кабинете.


    P.S.
    По поводу "пропадет форматирование" в EXCEL. А что? так принципиально? Поля будут, текст будет, на лист влезет - а что еще надо?
  2. TopicStarter Overlay
    vartanet
    Offline

    vartanet Опытный в 1С Команда форума

    Регистрация:
    16 ноя 2010
    Сообщения:
    2.698
    Симпатии:
    15
    Баллы:
    29
    ;)))

    ну хотелось бы.. в 8.0 вообще отвратительно сохранял в excel. в 8.1 вроде уже нормально сохраняет. не проверял можно ли в одном документе excel ландшафт и портрет совмещать. надо пробовать.
  3. uza
    Offline

    uza 1С, VBA (EXCEL), VB (.NET + WEB)

    Регистрация:
    10 июл 2007
    Сообщения:
    1.845
    Симпатии:
    1
    Баллы:
    29
    1) На одном листе - нет. Только одна ориентация. Однако есть такой пункт как Файл / Печать. А там переключатель можно установить как ВСЮ КНИГУ.

    2) Однако эта команда на языке ЭКСЕЛЬ выглядит как
    Код:
    ActiveWorkbook.PrintOut Copies:=1
    (печать ВСЮ книгу, в одном экземпляре), или даже вот так

    Код:
    ActiveWorkbook.PrintOut From:=2, To:=5, Copies:=1
    что читается как "Печатать книгу, начиная с 2го листа и по 5ый, в одном экземпляре"
    В 1С этот код может выглядеть так
    Код:
    ObjExcel = Новый COMОбъект("Excel.Application");
    ObjExcel.Visible = Истина;
    //открыть существующую книгу
    //РабочаяКнига = ObjExcel.WorkBooks.Open(ИмяФайла);
    //но в данном случае нам предстоит СОЗДАТЬ книгу. Наверное.
    //... наполняем листы (добавляя их, или удаляя)
    РабочаяКнига.PrintOut(2, 5, 1);
    3) Ну форматирование в 8.1 если и теряется, то я этого не заметил (ну кроме "узких" моментов форматов и цветов при копировании в уже существующую книгу). Ну а если и теряется - кто мешает в ЭКСЕЛЬ создать шаблон отформатированный (слияние ячеек где надо, шрифты там, закраска). И потом из 1С брать этот шаблон, заполнять его. Тут или напрямую обращаясь к ячейкам листов по их адресам, либо в ячейках понатыкать имен, и задавать значения по имени (таки как в 1С, да). Либо. Выделить один лист, в последствии не печатаемый, на нем разместить данные, а в других листах ссылки на данные (правда табличные части прийдется наполнять все равно по адресам + вызывая программный COPY / PASTE.

    Да. 3 - путь не самый простой. Но ведь, Вы простых путей то и не ищете.
    А простой путь: предоставьте шефу примерную оценку задачи с часами разработки (думаю что как то примерно часов по 6 на одну форму) и стоимостью железок (если решите покупать новый принтер). Шеф, если не дурак, помножит стоимость вашего часа, сложит с налогами, добавит стоимость простоя (вы же будете заняты задачей а не делом). И решительно пошлет манагеров в ж0пY
    )

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