Вставка Картринок в WORD

Программирование на Атлантисе (VIP, FCOM, ARD), FastReport

Модераторы: m0p3e, edward_K, Модераторы

korvanakorvana
Местный житель
Сообщения: 429
Зарегистрирован: 24 сен 2008, 11:53

Вставка Картринок в WORD

Сообщение korvanakorvana »

Ребята привет! Скажите а как в Галактике вставить в PRBDOC Картинки.
Ну вот например есть у меня файлик с именем xxxxx.jpg, в галактике у меня есть поле, где я забиваю такие имена типа xxxxx. Беру накладную и пробегаюсь по базе этих файлов. И те картиночки имя которых соответствет значению поля моих МЦ из накладной. я вставляю в PRBDOC напротив моей МЦ. Возможно ли так сделать?

Изображение
Последний раз редактировалось korvanakorvana 30 ноя 2011, 12:34, всего редактировалось 1 раз.
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5187
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Re: Вставка Картринок в WORD

Сообщение edward_K »

Возможно , но потребуется докомпиляция, типа такой

Код: Выделить всё

#component "Z_STAFF"
#include TStMailSend.vih

alter interface SPRMESR
  ( '')
;
  overload
  end;
create view NSPRMESR  
as select Appendix.Contents
from Appendix
Where
((
            1 == Appendix.ObjBlock     and
 Persons.Nrec == Appendix.Person       and
          200 == Appendix.ObjType
))
;
  
var tFoto : comIMailSend;
var strTmp:string ; 
var SprMesR_Type:string; 
HandleEvent  
cmInit:
{ //message('1')
  SaveMyDsk('SprMesR_FK_060','SprMesR_Type')
  Inherited::HandleEvent(cmInit) 
  //message('2')
  strTmp := GetStringParameter('Files', 'OutputFilesDirectory', 0) + 'tmp.bmp';
  IF true // (not FrmSprMesR.error)
  { DeleteFile(strTmp);
    if Not ReadMyDsk(SprMesR_Type,'SprMesR_Type',true) SprMesR_Type:='SprMesR_FK_060'
    if(GetFirst Appendix = tsOK)
    { ExportMemoToFile(Appendix.Contents, strTmp, false);
      PutFileToClient(UserPathVip + 'tmp.bmp', false);
      PutFileToClient(UserPathVip + 'SprMesR.rtf', false);
      if true
      {tFoto := comIMailSend(new(coMailSend));
       case SprMesR_Type of
       'SprMesR_FK_069':tFoto.OLE_ADD_FOTO(ExDirectoryOut, 'SprMesR.rtf',3,3,15);
       else tFoto.OLE_ADD_FOTO(ExDirectoryOut, 'SprMesR.rtf',3,4,17);
       end;
      }
      else
      { INSFOTO(ExDirectoryOut, 'SprMesR.rtf',3,4,17); 
      }
      // высота,положение по высоте, положение по горизонтали
    }
  }  
  abort ;
  closeinterface(cmDone)
}
end;
end.
Проще форму переделать на Excel шаблон, а там уже макросом можно сотворить все что угодно.
При печати в Ecxel лучше реализовать один счет на лист.
korvanakorvana
Местный житель
Сообщения: 429
Зарегистрирован: 24 сен 2008, 11:53

Re: Вставка Картринок в WORD

Сообщение korvanakorvana »

edward_K писал(а):Возможно , но потребуется докомпиляция, типа такой

Код: Выделить всё

#component "Z_STAFF"
#include TStMailSend.vih

alter interface SPRMESR
  ( '')
;
  overload
  end;
create view NSPRMESR  
as select Appendix.Contents
from Appendix
Where
((
            1 == Appendix.ObjBlock     and
 Persons.Nrec == Appendix.Person       and
          200 == Appendix.ObjType
))
;
  
var tFoto : comIMailSend;
var strTmp:string ; 
var SprMesR_Type:string; 
HandleEvent  
cmInit:
{ //message('1')
  SaveMyDsk('SprMesR_FK_060','SprMesR_Type')
  Inherited::HandleEvent(cmInit) 
  //message('2')
  strTmp := GetStringParameter('Files', 'OutputFilesDirectory', 0) + 'tmp.bmp';
  IF true // (not FrmSprMesR.error)
  { DeleteFile(strTmp);
    if Not ReadMyDsk(SprMesR_Type,'SprMesR_Type',true) SprMesR_Type:='SprMesR_FK_060'
    if(GetFirst Appendix = tsOK)
    { ExportMemoToFile(Appendix.Contents, strTmp, false);
      PutFileToClient(UserPathVip + 'tmp.bmp', false);
      PutFileToClient(UserPathVip + 'SprMesR.rtf', false);
      if true
      {tFoto := comIMailSend(new(coMailSend));
       case SprMesR_Type of
       'SprMesR_FK_069':tFoto.OLE_ADD_FOTO(ExDirectoryOut, 'SprMesR.rtf',3,3,15);
       else tFoto.OLE_ADD_FOTO(ExDirectoryOut, 'SprMesR.rtf',3,4,17);
       end;
      }
      else
      { INSFOTO(ExDirectoryOut, 'SprMesR.rtf',3,4,17); 
      }
      // высота,положение по высоте, положение по горизонтали
    }
  }  
  abort ;
  closeinterface(cmDone)
}
end;
end.
Проще форму переделать на Excel шаблон, а там уже макросом можно сотворить все что угодно.
При печати в Ecxel лучше реализовать один счет на лист.

(( докомпиляций у меня еще никогда не было(
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5187
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Re: Вставка Картринок в WORD

Сообщение edward_K »

Кстати. А почему бы вам штрихкоды самими не пропечатывать?
вот этим шрифтом например \exe\Xls\Z_ZAR\EanG000.ttf. Хранить их следует в katmc.barkod2, ну или в партии например в номере анализа.
korvanakorvana
Местный житель
Сообщения: 429
Зарегистрирован: 24 сен 2008, 11:53

Re: Вставка Картринок в WORD

Сообщение korvanakorvana »

edward_K писал(а):Кстати. А почему бы вам штрихкоды самими не пропечатывать?
вот этим шрифтом например \exe\Xls\Z_ZAR\EanG000.ttf. Хранить их следует в katmc.barkod2, ну или в партии например в номере анализа.

c радостью бы но нужен шрифт для EAN-13

НАШЛА у вас на сайте ) http://www.tyumbit.ru/galaktika/downloa ... SHRIFT.rar Постарались ребятки
LaaLaa

Re: Вставка Картринок в WORD

Сообщение LaaLaa »

А чего вы мучаетесь, сделайте этот отчет на FastReport. Там есть специальный объект TfrxBarСode для печати всех типов штрих кода.
Изображение
Последний раз редактировалось LaaLaa 30 ноя 2011, 13:33, всего редактировалось 1 раз.
LaaLaa

Re: Вставка Картринок в WORD

Сообщение LaaLaa »

А если вам нужно этот отчет передавать третьей стороне. То не проблема - отчет FastReport можно сохранить как RTF, XLS, PDF.
korvanakorvana
Местный житель
Сообщения: 429
Зарегистрирован: 24 сен 2008, 11:53

Re: Вставка Картринок в WORD

Сообщение korvanakorvana »

LaaLaa писал(а):А если вам нужно этот отчет передавать третьей стороне. То не проблема - отчет FastReport можно сохранить как RTF, XLS, PDF.
c радостью бы) да вот у нас шеф жадный мне этот модуль не купили(


Люди добрые подскажите а по какому алгоритму пользоваться шрифтом EanG000.ttf чтобы он в EAN-13 мне выдал код :? :? :? :?
Последний раз редактировалось korvanakorvana 01 дек 2011, 07:31, всего редактировалось 1 раз.
LaaLaa

Re: Вставка Картринок в WORD

Сообщение LaaLaa »

Ужос, хоть VIP компилятор у вас есть? Или только один FCOM?
korvanakorvana
Местный житель
Сообщения: 429
Зарегистрирован: 24 сен 2008, 11:53

Re: Вставка Картринок в WORD

Сообщение korvanakorvana »

LaaLaa писал(а):Ужос, хоть VIP компилятор у вас есть? Или только один FCOM?
Вот так вот и живем) Не ну Vip есть)
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5187
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Re: Вставка Картринок в WORD

Сообщение edward_K »

в cfg добавляете Forms.Fcenv=On (только себе)
запускаете FastReport отчет. Там будет кнопка F4 - редактируете и сохраняете с новым именем. Всегда на всякий случай помимо ресурса сохраняете в файл.
Тестите.
В батник для сборки реса добавляете типа
%GalPath%frres.EXE /To /r:%TPU%\%DB%_%PR%.res /source:%DB%\%PR%\fr3 /c:vip.cfg
(ну у меня один батник на сборку всех ресов - какой проект собирается зависит от 2 параметров )
Сохраненный файл складываете в %DB%\%PR%\fr3
Компилите, удаляете свой atlantis.res , подключате рес к системе - и все видят ваш отчет.
Вот вопрос - будет ли у вас кнопка F4 :).
LaaLaa

Re: Вставка Картринок в WORD

Сообщение LaaLaa »

korvanakorvana писал(а):
LaaLaa писал(а):Ужос, хоть VIP компилятор у вас есть? Или только один FCOM?
Вот так вот и живем) Не ну Vip есть)
Тогда посмотрите ваши LIC-файлы Галактики и Саппорта там есть строчка FASTREPORT?
korvanakorvana
Местный житель
Сообщения: 429
Зарегистрирован: 24 сен 2008, 11:53

Re: Вставка Картринок в WORD

Сообщение korvanakorvana »

LaaLaa писал(а):
korvanakorvana писал(а):
LaaLaa писал(а):Ужос, хоть VIP компилятор у вас есть? Или только один FCOM?
Вот так вот и живем) Не ну Vip есть)
Тогда посмотрите ваши LIC-файлы Галактики и Саппорта там есть строчка FASTREPORT?
да есть) Список доступных контуров {
FASTREPORT . А как мне его вызвать?
LaaLaa

Re: Вставка Картринок в WORD

Сообщение LaaLaa »

korvanakorvana писал(а):да есть) Список доступных контуров {
FASTREPORT . А как мне его вызвать?
О, значит шеф увас все же хороший :). Зря его ругали :)

Начните с прочтения FastReport инструкция для программистов Галактики
Потом документацию по FR - http://www.fast-report.com/pbc_download ... ual-ru.pdf
Потом кучу полезных примеров может скачать со моей странички http://code.google.com/p/laalaa/downloads/list
korvanakorvana
Местный житель
Сообщения: 429
Зарегистрирован: 24 сен 2008, 11:53

Re: Вставка Картринок в WORD

Сообщение korvanakorvana »

LaaLaa писал(а):
korvanakorvana писал(а):да есть) Список доступных контуров {
FASTREPORT . А как мне его вызвать?
О, значит шеф увас все же хороший :). Зря его ругали :)

Начните с прочтения FastReport инструкция для программистов Галактики
Потом документацию по FR - http://www.fast-report.com/pbc_download ... ual-ru.pdf
Потом кучу полезных примеров может скачать со моей странички http://code.google.com/p/laalaa/downloads/list


Начала разбираться в FastReport)Спасибочки! Вот имею наглости спросить как примерно должен выглядеть мой код :shock: , мне для старта дальше обещаю исправиться)Уж просто сроки жмут, с меня подарочек)
Ответить