PDA

Ver la Versión Completa : [Duda] Que es el Overlays de PowerFORM


Josber
15 de abril de 2015, 10:25
Estoy a vueltas con el PowerForm, empezando a pasar cosas desde el RPV 2.2, (el gratuito), y viendo los ejemplos que trae el programa, veo que hay Forms y Overlays, ¿cuál es la diferencia entre ellos?, ¿el overlay es necesario o para que sirve?

Es que me encuentro totalmente perdido con éste tema, he hecho un form de prueba y, en modo diseño, cuando le doy a preview, no aparece nada, y en los ejemplos sí que aparece el diseño en el preview .... :shok: :shok: y eso que tengo algún formulario hecho, pero no me acuerdo exactamente como los hice :cardenal: :cardenal:


Muchas gracias.-

Kuk
16 de abril de 2015, 13:02
Overlays
Puede que este diciendo una tonteria pero eso no era para las lineas de detalle que no se sabe cuantas seran y por lo tanto ese bloque es dinamicamente redimensioable ?

Josber
16 de abril de 2015, 16:56
Pues no lo sé Kuk, aunque yo creo que no, porque en los ejemplos, he visto overlays tanto en un informe fijo como en un listado.

Rapinto
17 de abril de 2015, 23:04
Josber,

O powerForm é bastante bom para listagens.

Podes desenhar o modelo de documento que pretendes, conforme quiseres.
Os ficheiros PMD contém uma espécie de FD (File Description) da impressão.
Os ficheiros OVD contem a parte "gráfica" do Documento. Por exemplo, imagens (fixas ou carregadas em Run-Time), Linhas quadros, etc.
São necessários os dois ficheiros em run-time para que funcione bem.
Por Exemplo:

Tenho uma PowerForm chamada RBAS002.PMD e RBAS002.OVD


FILE-CONTROL.
SELECT FILE9 ASSIGN TO PRTFILE
ORGANIZATION IS SEQUENTIAL
ACCESS MODE IS SEQUENTIAL
FORMAT IS PRT-FORMAT
GROUP IS PRT-GROUP
FILE STATUS IS FS-FILE9.
DATA DIVISION.
FILE SECTION.
FD FILE9.
COPY RBAS002 OF XMDLIB.
WORKING-STORAGE SECTION.

PROCEDURE DIVISION.

*
OPEN OUTPUT FILE9.
INITIALIZE RBAS002.
MOVE "RBAS002" TO PRT-FORMAT.

MOVE EMPNOME TO CAB01-01 OF RBAS002.
MOVE "LISTAGEM DE DISTRITOS" TO CAB01-02 OF RBAS002.
WRITE RBAS002 AFTER ADVANCING PAGE.
CLOSE FILE9.


Deves ter também um ficheiros definido em COBOL85.CBR com a linha:
PRTFILE=.\RPS.PRT
(RPS.PRT foi como eu chamei ao ficheiro. Pode ser outro nome qualquer)

Esse ficheiro RPS.PRT contem as seguintes linhas:

*************************************************
* Printer Information file
*************************************************
COPYG 1
FORMKIND C
SUPLY NO
PRTNAME "BULLZIP PDF PRINTER"
MEDDIR "D:\RPS14_SRC\FORMS"
OVLPDIR "D:\RPS14_SRC\FORMS"
MEDIADIR "D:\RPS14_SRC\FORMS"
PRTID "R.P.S. - Documento"
PREVIEW 0
PRTDIALG "Y"
SETPRTDIALOG 0
**************************************************

Neste ficheiro COPYG é o numero de Copias
FORMKIND é o tipo de papel (Continuo ou folha a folha
PRTNAME é o nome da impressora (Este PRTNAME é o que aparece na Select)
MEDDIR é onde estãi os ficheiros PMD
OVLPDIR é onde estão os ficheiros PVD
PRTID é o nome do documento
PREVIEW 0 ou 1 permite fazer o preview)

Esta explicação está um pouco longa.
Mas se tiveres mais alguma dúvida, diz-me. (eu tenho na minha aplicação mais de 700 listagens e documentos (700 PMD e 700 OVD e sempre funcionou tudo muito bem.

Saludos,
Rui Pinto

Josber
19 de abril de 2015, 13:06
Por lo que dices Rapinto, no es obligatorio tener un overlay, con el .pmd sólo también funcionaría, el overlay es por si quieres reutilizar parte del form en otro listado, ¿no?, aunque, de momento, no veo cómo

Un saludo.-

Rapinto
20 de abril de 2015, 01:11
Josber,

Expliquei mal. Me desculpa.

O Overlay não é mais do que o que nós chamamos um pré-impresso.
Imagina o desenho de uma fatura ou recibo, já com o logotipo da empresa e as "caixotas" onde o programa escreve. Isso é guardado no OVD. A parte variável escrita pelo programa é o PMD - muito parecido com FileDescription).

Podes ter apenas uma FORM com o PMD e sem OVD. Se não utilizares nada da parte gráfica. Tenho o caso de impressão etiquetas de artigos (sem imagens, só texto) nesse caso só existe o PMD.

Podes utilizar o mesmo overlay para várias "FORMS".
Eu não utilizo isso, eu duplico o OVD e cada PMD tem o seu OVD (por exemplo RBAS002.PMD RBAS002.OVD). É sempre necessário alterar alguma coisa para uma form em particular e usar o mesmo OVD tornava-se limitativo.

Desculpa escrever em Português (por vezes não me faço entender bem).

Un Saludo,
Rui Pinto

Josber
20 de abril de 2015, 08:03
No te preocupes Rapinto, se entiende muy bien, y para lo poco que no entendamos, está el google-translate :busca: :busca:

Ahora ya entiendo el tema del Overlay, muchas gracias.

Un saludo.-

Rapinto
21 de abril de 2015, 15:17
Josber,

Anexo exemplo completo de PowerForm.

O programa permite alterares os parâmetros e ver o resultado.
Tens um quadro com esses parâmetros (RPS.PRT ou qualquer outro nome que queiras dar).
Tens um exemplo do COBOL85.CBR (é aí que dizes o nome do ficheiro de parâmetros).
E tens o código para abrir a impressora e imprimir.

Inclui um exemplo de imagem BMP em run-time e outra imagem no OVD.
Tive que partir em 2 ZIP pois o tamanho excedia.
Espero que este exemplo ajude todos os que pretendem trabalhar com PowerForm.
Qualquer dúvida digam-me.
E agora vou me preparar para o grande jogo : o meu F.C.Porto contra Bayern Munique:silba:

Un Saludo
Rui Pinto

Josber
21 de abril de 2015, 16:37
Rapinto, Te ha faltado el archivo del form, (.PMD), y por eso, supongo que no funciona, aunque por lo que veo, haces más o menos lo mismo que yo.

Muchas gracias

Un saludo.-

Rapinto
21 de abril de 2015, 17:19
Josber,

Tens razão o zip não inclui a pasta PFORM

Aqui está,

Me desculpa e un Saludo
Rui

jjcol
7 de septiembre de 2021, 00:19
se puede colocar una ruta para que todos los programas vallan y cojan el PMD de un lugar específico ?

Josber
7 de septiembre de 2021, 12:10
se puede colocar una ruta para que todos los programas vallan y cojan el PMD de un lugar específico ?

¡¡¡Uff!!!, ni idea, yo los tengo en la misma ruta que los ejecutables ..., supongo que sí pero, ni idea de como

Un salu2.-

Kuk
8 de septiembre de 2021, 11:08
@jjcol, https://software.fujitsu.com/jp/manual/manualfiles/m140007/b1wd3302/01enz000/b1wd-3302-01enz0.pdf


2) MEFTDIR
Explanation
Specify search path of printer information files as environment variable “PATH”.
Setting
Specifies the storage directory for the printer information files. Two or more
directories can be specified by delimiting them with a semicolon.
Example:
SET MEFTDIR=C:\DIR1;C:\DIR2