'Nome       : GbiBil.std
'Tipo       : LST
'Data       : 2009/06/17
'Versao     : 1.0
'Descricao  : GBI - Bilhete

'==============================================================================
'#VER - Historia de modificacoes
'==============================================================================
'- Versao : 1.0   2009/??/?? --------------------------------------------------
'Versao Base


'==============================================================================
#DEF - Definicao global do documento
'==============================================================================
Caracteres invalidos             [CarInv]=#
Subtotalizadores                 [SbtNiv]=2
##


'==============================================================================
#ESP - Campos especificos
'==============================================================================
Zoom para preview             [PrvZoom]=1
'Opcoes para impressora WIN   [PrWinOpc]=[ORI=P]
Opcoes para impressora WIN   [PrWinOpc]=[ORI=L]

##


'==============================================================================
#SQL - Comandos SQL
'==============================================================================
Base de dados           [BD]=EmpFic$("EMP","Cemp,Emp_Dat.mdb")
'Base de dados           [BD]=EmpFic$("EMP","Gbi,Gbi.mdb")
##


'==============================================================================
#DOC_x - Configuracao do documento - TEXTO
'==============================================================================
Tipo                       [DocTip]=BIL
Nome                       [DocNom]=BIL,Bilhete

'formato
Saida/Impressora           [DocSai]=
Linhas por pagina          [DocLpg]=1
Colunas por linha          [DocCol]=80
Formato do papel           [DocPap]=72L
Ajustar pagina             [DocApg]=0

'funcoes de listagem
Listar cabecalho            [FxCAB]=GbiBil_Cab
Listar linhas               [FxLIN]=GbiBil_Lin
Listar fim                  [FxFIM]=GbiBil_Fim
##


'==============================================================================
#DOC - Configuracao do documento - GRAFICO
'==============================================================================
Tipo                       [DocTip]=BIL
Nome                       [DocNom]=BILGRF,Bilhete - Gráfico

'formato
'Saida/Impressora           [DocPrt]=PAG_W
Saida/Impressora           [DocPrt]=PAG_W,PRV

Linhas por pagina          [DocLpg]=1
Colunas por linha          [DocCol]=80
Formato do papel           [DocPap]=72L
Ajustar pagina             [DocApg]=0

'funcoes de listagem
Listar cabecalho            [FxCAB]=GbiBilGrf_Cab
Listar linhas               [FxLIN]=GbiBilGrf_Lin
Listar fim                  [FxFIM]=GbiBilGrf_Fim
##


'==============================================================================
#VAR - Variaveis
'==============================================================================
Pag      = Doc_CntPag
DataExt  = FrmVal$(SIG_DtHoje,45,0)

'variaveis a listar
Art      = StcCodFrm$("")                
Nom      = Stc_Mst_Nome1$
Unid     = Stc_Mst_Unid$

'dados do bilhete
'Prc      = StcPrcFrm$(12,GBI_Lug_Prc)
Pv2      = StcPrcFrm$(12,Stc_Mst_Pv2)
Pv3      = StcPrcFrm$(12,Stc_Mst_Pv3)
Pv4      = StcPrcFrm$(12,Stc_Mst_Pv4)

Prc      = FrmNum$(9.2,GBI_Lug_Prc)
##


'==============================================================================
#INC - includes
'==============================================================================
Variaveis  comuns                 =[SIG_Dir.Div],LsComVar.std
##


'==============================================================================
#PGM - Programa/Funcoes
'==============================================================================
Sub Lst_AJT
end sub


'------------------------------------------------------------------------------
'Inicializacao do documento
'------------------------------------------------------------------------------
Sub FxIni 'funcao de inicializacao
logoNom$ = "DocLogo.bmp"                   'nome do logotipo
logoUsa$ = "[SIG_DIR.DIV]," + logoNom$     'logotipo a usar
logoFic$ = VarTx$(logoUsa$,"R")            'ficheiro do logotipo

'modo WIN
PrWIN AJT_F, 56.7,  56.7                   'ajuste para milimetros
PrWIN AJT_D,-280.0,-280.0                  'deslocamento de ajuste 
PrWIN IMG_F, 1, logoFic$                   'imagem (logotipo)
PrWIN ET,  2                               'espessura de traco

'limites
xMin = 200                                 'X minimo
xMax = 500                                 'X maximo

yMin = 100                                 'Y minimo
yMax = 900                                 'Y maximo
end sub


Sub FxFim 'funcao de finalizacao
PrWIN FON, "REG"                           'limpar registo de fontes
end sub


'-----------------------------------------------------------------------------
'- Bilhete - TEXTO -----------------------------------------------------------
'-----------------------------------------------------------------------------
Sub GbiBil_Cab 'cabecalho
FxDiv LstIde,16CPI,0
?
print TxTit$("TT=10CPI, LD, PT=40C, TL=10CPI","Bilhete")
?Data : @DataExt                                               Folha No : @Pag#
?==============================================================================
?  Codigo             Designacao                    Und      Factor     Obs.  #
?==============================================================================
end sub


Sub GbiBil_Lin 'linha
print "Sala: ";
'print GBI_Sal_Cod$;
print GBI_Sal_Grp$;
print " - ";
print GBI_Sal_Des$

print "Espectaculo: ";
print GBI_Esp_Cod$;
print " - ";
print GBI_Esp_Tit$

print "Sessão: ";
print GBI_Ses_Dat$;
print " - ";
print GBI_Ses_Hor$

print 

print "Sector: ";
print GBI_Lug_Sec$

print "Fila  : ";
print GBI_Lug_Fil$

print "Lugar : ";
print GBI_Lug_Lug


print "Preco: ";
print FrmNum$(9.2,GBI_Lug_Prc)
end sub


Sub GbiBil_Fim 'terminar
?==============================================================================
FxDiv LstPer,SP
end sub


'-----------------------------------------------------------------------------
'- Bilhete - GRAFICO ---------------------------------------------------------
'-----------------------------------------------------------------------------
Sub GbiBilGrfIni 'inicializacao do documento
'definicao de posicoes
pagPx        =  15                          'posicao X
pagPy        = 115                          'posicao Y
end sub


Sub GbiBilGrf_LinPos 'posicionar linha
'PrWIN AJT_B,   Margem, InicioLinhas+Doc_CntLin*5            'posicao base
'nada a executar
end Sub


Sub x_GbiBilGrf_Cab 'cabecalho
PrWIN AJT_B,  pagPx, pagPy                     'posicao base
PrWIN IMG_V,1, 2, 2, 50, 20                    'imagem (logotipo)
'PrWIN GR_CX,   2, 2, "+50", "+20", 2          'caixa envolvente

PrWIN FON, 12, 1                               'activar fonte
PrWin FON, "BOLD+"                             'activar bold
PrWIN TX_N, 55, 10,@EmpNome
PrWin FON, "BOLD-"                             'desactivar bold
End sub


Sub x_GbiBilGrf_Lin 'linha
'Call DocLinPos                                              'posicionar linha
'PrWIN TX_N,  Col1+1, 0,    @LinArt
'PrWIN TX_N,  Col2,   0,    @LinNome
'PrWIN TX_NP, Col3+5, 0,"N",@LinQu
'PrWIN TX_N,  Col4,   0,    @LinUni
'PrWIN TX_NP, Col5,   0,"N",@LinPrc
'PrWIN TX_NP, Col6,   0,"N",@LinDesco
'PrWIN TX_NP, Col7,   0,"N",@LinLiq
'PrWIN TX_NP, Col8,   0,"N",@Iva


pxIde = pagPx + 15
pxVal = pagPx + 50

PrWIN TX_N, pxIde, 10,@EmpNome

'sala
py = 23
'txSal$ = GBI_Sal_Grp$ + " - " + GBI_Sal_Des$

'call SigVarComCon("SalDes", txSal$)
'txSal$ = SalDes

txSal$   = VarCom$("SalDes")

PrWIN TX_N, pxIde, py,"Sala:"
PrWIN TX_N, pxVal, py,txSal$


'espectaculo
py = py + 10
'txEsp$ = GBI_Esp_Cod$ + " - " + GBI_Esp_Tit$
txEsp$ = GBI_Esp_Tit$
PrWIN TX_N, pxIde, py,"Espectaculo:"
PrWIN TX_N, pxVal, py,txEsp$


'sessao
py = py + 10
txSes$ = GBI_Ses_Dat$ + " - " + GBI_Ses_Hor$
PrWIN TX_N, pxIde, py,"Sessão:"
PrWIN TX_N, pxVal, py,txSes$


'lugar
py1 = py + 10
py2 = py1 + 5
px = pxIde
PrWIN TX_N, px, py1,"Sector"
PrWIN TX_N, px+3, py2,GBI_Lug_Sec$

'py = py + 5
px = px + 40
PrWIN TX_N, px, py1,"Fila"
PrWIN TX_N, px+2, py2,GBI_Lug_Fil$

'py = py + 5
px = px + 40
lug$ = Trim$(GBI_Lug_Lug)
PrWIN TX_N, px, py1,"Lugar"
PrWIN TX_N, px+2, py2,lug$

'py = py + 5
px = px + 40
txPrc$ = "€ " + Trim$(FrmNum$(9.2,GBI_Lug_TraPrc))
PrWIN TX_N, px, py1,"Preco"
PrWIN TX_NP, px-3, py2,"N",txPrc$
end sub


Sub GbiBilGrf_Cab 'cabecalho
'nada a executar


'PrWIN GR_LI, xMin, yMin, xMax, yMax, 2     'zona de listagem
'PrWIN GR_CX, xMin, yMin, xMax, yMax, 2     'zona de listagem


xBas  =  55                                'X base
yBas  =  10                                'Y base

zonX1 =   0                                'X minimo
zonY1 =   0                                'Y minimo

zonX2 = 100                                'X maximo
zonY2 = 200                                'Y maximo

'zona de listagem
PrWIN AJT_B, xBas, yBas                    'posicao base
PrWIN GR_CX, zonX1, zonY1, zonX2, zonY2, 2 'zona de listagem

'zona 1
zo1X1 = zonX1 +   2
zo1Y1 = zonY1 +  75

zo1X2 = zonX2 -   2
zo1Y2 = zonY1 + 115

PrWIN GR_CX, zo1X1, zo1Y1, zo1X2, zo1Y2, 2 'zona de listagem

'zona 2
zo2X1 = zonX1 +   2
zo2Y1 = zonY1 + 120

zo2X2 = zonX2 -   2
zo2Y2 = zonY1 + 165

PrWIN GR_CX, zo2X1, zo2Y1, zo2X2, zo2Y2, 2 'zona de listagem

'zona 3
zo3X1 = zonX1 +   2
zo3Y1 = zonY1 + 170

zo3X2 = zonX2 -   2
zo3Y2 = zonY2 -   2

PrWIN GR_CX, zo3X1, zo3Y1, zo3X2, zo3Y2, 2 'zona de listagem
end sub


Sub GbiBilGrf_Lin 'linha
res = GbiLstGrp("BT","Z1")           'listar zona
res = GbiLstGrp("BT","Z2")           'listar zona
res = GbiLstGrp("BT","Z3")           'listar zona
end sub


Sub GbiBilGrf_Fim 'terminar
PrWIN FP                                           'fim de pagina
end sub

##


'==============================================================================
#INC - Funcoes comuns
'==============================================================================
Funcoes comuns                    =[SIG_Dir.Div],LsComPgm.std
##

