'Nome       : cadastro.std
'Tipo       : LST
'Data       : 2006/09/14
'Versao     : 1.2b
'Descricao  : cadastro de trabalhador

'------------------------------------------------------------------------------
'#VER - Historia de modificacoes
'------------------------------------------------------------------------------
'- Versao : 1.0  2000/01/25 ---------------------------------------------------
'Versao base


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


'-----------------------------------------------------------------------------
' Campos especificos
'-----------------------------------------------------------------------------
#ESP
##


'-----------------------------------------------------------------------------
' Configuracao do documento
'-----------------------------------------------------------------------------

'--graficos-----------------------------------------------------------------------
#DOC
Tipo                       [DocTip]=ORDGER
Nome                       [DocNom]=TRB_G,Por Codigo

'formato
Saida/Impressora           [DocPrt]=PAG_W
Linhas por pagina          [DocLpg]=55
Colunas por linha          [DocCol]=80
Formato do papel           [DocPap]=72L
Ajustar pagina             [DocApg]=0
Ordenacao                  [DocEsp]=ORD=COD
'Listar continuo            [DocEsp]=LstCnt=1
'Listar qnd valores zero    [DocEsp]=LstZer=1
'Situacao a listar          [DocEsp]=TrbSit=11,12
Variaveis do historico     [DocEsp]=HstVar=nva$='categ' or nva$='vbase'

'funcoes de listagem
Listar cabecalho            [FxCAB]=Pw_Cab
Listar linhas               [FxLIN]=Pw_Lin; Hst; Fer
Listar fim                  [FxFIM]=Pw_Fim
##


'-----------------------------------------------------------------------------
' Variaveis
'-----------------------------------------------------------------------------
#VAR
'cabecalho
DatDia    = FrmVal$(Sig_DtHoje,45,0)
Pag       = Doc_CntPag

'linha
Cod       = Gpe_Mst_Trb$
Nome      = Gpe_Mst_Nome$
CodCat    = GpeTabCon$("CAT",Gpe_Mst_Categ,"ABRV")
CodSec    = GpeTabCon$("SEC",Gpe_Mst_Sec$,"ABRV")

Mor       = Gpe_Mst_Morada$
Loc       = Gpe_Mst_Local$
Cpos      = Gpe_Mst_Cpost$
Freg      = Gpe_Mst_Freg$
Conc      = Gpe_Mst_Conc$
Dist      = Gpe_Mst_Dist$
Tel       = Gpe_Mst_Telef$

Cont      = Gpe_Mst_Ctrb$
Domic     = FrmVal$(Gpe_Mst_CodDom,21,-4)
DtAdm     = FrmVal$(Gpe_Mst_DtAdmi,44,0)

Cat       = GpeCodFrm$("CAT",Gpe_Mst_Categ)+"      - "+GpeTabCon$("CAT",Gpe_Mst_Categ,"ABRV")
Sec       = GpeCodFrm$("SEC",Gpe_Mst_Sec$)+" - "+GpeTabCon$("SEC",Gpe_Mst_Sec$,"DESC")
Crss      = GpeCodFrm$("CSS",Gpe_Mst_Crss)+"    - "+GpeTabCon$("CSS",Gpe_Mst_Crss,"ABRV")
Est       = GpeCodFrm$("EST",Gpe_Mst_Est$)+" - "+GpeTabCon$("EST",Gpe_Mst_Est$,"NOME")
Seg       = GpeCodFrm$("SEG",Gpe_Mst_CodSeg)+"      - "+GpeTabCon$("SEG",Gpe_Mst_CodSeg,"ABRV")
Bnc       = GpeCodFrm$("BNC",Gpe_Mst_Banco$)+"  - "+GpeTabCon$("BNC",Gpe_Mst_Banco$,"ABRV")
Snd       = GpeCodFrm$("SND",Gpe_Mst_Sind)+"      - "+GpeTabCon$("SND",Gpe_Mst_Sind,"ABRV")
Hab       = GpeCodFrm$("HAB",Gpe_Mst_Habil$)+" - "+GpeTabCon$("HAB",Gpe_Mst_Habil$,"ABRV")
Prof      = GpeCodFrm$("PROF",Gpe_Mst_Prof$)+" - "+GpeTabCon$("PROF",Gpe_Mst_Prof$,"ABRV")
SitProf   = GpeCodFrm$("SIT",Gpe_Mst_SitProf$)+" -" +GpeTabCon$("SIT",Gpe_Mst_SitProf$,"ABRV")

niss      = Gpe_Mst_CrssNb$
Nib       = Gpe_Mst_BcNib$

SitEmp    = GpeFrmCodSit$("SIT_E",Gpe_Mst_SitEmp)

DtNasc    = FrmVal$(Gpe_Mst_DtNasc,44,0)
DtSit     = FrmVal$(Gpe_Mst_DtSit,44,0)
DtAdm     = FrmVal$(Gpe_Mst_DtAdmi,44,0)
DtProm    = FrmVal$(Gpe_Mst_DtProm,44,0)
DtFct     = FrmVal$(Gpe_Mst_DtFimCt,44,0)

Sex       = GpeFrmCodSit$("SEXO",Gpe_Mst_Sexo$)

SocSnd    = GpeFrmMoe$("",7,Gpe_Mst_SindSoc)
Quota     = GpeFrmMoe$("",8,Gpe_Mst_SindQ)
Lpag      = GpeFrmCodTab$(2,Gpe_Mst_Lpag$)
Mpag      = GpeFrmCodSit$("M_PAG",Gpe_Mst_Mpag)
Obs       = Gpe_Mst_ObsQp$

EstCiv    = GpeFrmCodSit$("EST_C",Gpe_Mst_EstCiv)
Tit       = GpeFrmCodSit$("TITL",Gpe_Mst_TitR)
DtDecl    = FrmVal$(Gpe_Mst_DtDecl,44,0)
Ndepen    = FrmVal$(Gpe_Mst_Depen,21,2.0)

Conj      = Gpe_Mst_ConjN$
ConjCtrb  = Gpe_Mst_ConjC$
DecDef    = FrmVal$(Gpe_Mst_DefP,61,1.0)
ConjDef   = FrmVal$(Gpe_Mst_DefC,61,1.0)
NdepenDef = FrmVal$(Gpe_Mst_DefD,21,2.0)

TipTmp    = GpeFrmCodSit$("TEMPO",Gpe_Mst_Calc)
HorSem    = FrmVal$(Gpe_Mst_Horas,21,2.1)
HorMes    = FrmVal$(GpeHrCnv("SM",Gpe_Mst_Horas),21,3.2)
VencBas   = GpeFrmMoe$("",11,Gpe_Mst_Vbase)
VencHora  = GpeFrmMoe$("",8,GpeVenc("H",Gpe_Mst_Horas,Gpe_Mst_Vbase))
VencDia   = GpeFrmMoe$("",8,GpeVenc("D",Gpe_Mst_Horas,Gpe_Mst_Vbase))

TpIrs     = Gpe_Mst_IrsTp
TxIrs     = FrmVal$(Gpe_Mst_IrsTx,21,2.1)
Tr        = Gpe_Mst_TipRnd$

ValEsp1   = GpeFrmMoe$("",12,Gpe_Mst_Vesp1)
ValEsp2   = GpeFrmMoe$("",12,Gpe_Mst_Vesp2)
ValEsp3   = GpeFrmMoe$("",12,Gpe_Mst_Vesp3)
ValEsp4   = GpeFrmMoe$("",12,Gpe_Mst_Vesp4)

TipMva    = FrmVal$(Gpe_Mst_TipMva,21,1.0)

data         = FrmVal$(TxIde$(MemTxt$(11),"dtr"),44,0)
categoria    = GpeMstHstNvaVl$("","categ",TxIde$(MemTxt$(11),"categ"))
vencimento   = GpeMstHstNvaVl$("","vbase",TxIde$(MemTxt$(11),"vbase"))

pais         = GpeTabCon$("PAIS",Gpe_Mst_Pais,"DESC")
Nif          = Gpe_Mst_Ctrb$
##


'==============================================================================
#INC - Inclusao de ficheiros
'==============================================================================
Variaveis  comuns                 =[SIG_Dir.Div],LsComVar.std
##


'-----------------------------------------------------------------------------
' Formato do documento (Cabecalho, Linhas e Fim)
'-----------------------------------------------------------------------------
#PGM
'------------------------------------------------------------------------------
'Impressao grafica
'------------------------------------------------------------------------------
SUB FxIni 'funcao de inicializacao
Call SigLstIni
End sub


Sub Pw_CabComum
PrWIN COR_F, 15                                    'cor de fundo
SigCabNorOpcTit=2 	'usar titulo indicado
Call SigCabNor
PrWIN AJT_B,  Margem, 30                     'posicao base
End sub


Sub Pw_FimComum
PrWIN AJT_B,  Margem, 265          	'posicao base
PrWIN GR_LI, 0, 0, MargemD, 0               	'linha
Call SigLstFim
PrWin FP
End sub


'-----------------------------------------------------------------------------
' Listagem para conferencia
'-----------------------------------------------------------------------------
Sub Pw_Cab
Titulo$="Ficha de empregado"
Call Pw_CabComum


PrWIN AJT_B,  Margem+140, 35                          'posicao base
foto$=EmpFic$("EMP","gpe\fotos")+"\"+gpe_mst_trb$+".jpg")   'imagem 
PrWIN IMG_F, 1, foto$     'imagem 
PrWIN IMG_V, 1, 0,0,30,30                           'apresentar imagem


PrWIN AJT_B,  Margem, 25+Doc_CntLin*3.7          	'posicao base
PrWIN COR_T,CorTraco                            'cor de linhas
PrWIN GR_LI, 0, 4, cmax, 4               	'linha

Col1=5
Col2=35
Col3=Col2+50
Col4=Col3+50

PrWIN COR_T,  CorTitLst                         'cor de titulo
PrWIN FON  ,  10,   1                        	'activar fonte


PrWIN TX_N,  Col1,0,"Codigo"
PrWIN TX_N,  Col2,0,"Nome"

PrWIN COR_T,  Corlin                            'cor de linha
PrWIN TX_N,  Col1+15,0,@Cod
PrWIN TX_N,  Col2+13,0,@Nome

PrWIN COR_T,  CorTitLst                         'cor de titulo
Col1=5
Col2=col1+45
Col3=Col2+45


c1=col1+20
c2=col2+20
c3=col3+20


PrWIN TX_N,  Col1,5,"Morada"
PrWIN TX_N,  Col1,10,"Localidade"
PrWIN TX_N,  Col1,15,"Cod.Postal"
PrWIN TX_N,  Col1,20,"Distrito"
PrWIN TX_N,  Col2,20,"Concelho"
PrWIN TX_N,  Col3,20,"Freguesia"
PrWIN TX_N,  Col1,25,"Pais"
PrWIN TX_N,  Col1,30,"Data Nascimento"
PrWIN TX_N,  Col1,35,"Telefone"

PrWIN TX_N,  Col1,40,"NIF"
PrWIN TX_N,  Col1,45,"NISS"
PrWIN TX_N,  Col2,40,"Data de Admissão"
PrWIN TX_N,  Col2,45,"Habilitações"
PrWIN TX_N,  Col2,50,"Profissão"


PrWIN COR_T,  Corlin                            'cor de linha
PrWIN TX_N,    C1,5,@Mor
PrWIN TX_N,    C1,10,@Loc
PrWIN TX_N,    C1,15,@Cpos
PrWIN TX_N,    C1,20,@Dist
PrWIN TX_N,    C2,20,@Conc
PrWIN TX_N,    C3,20,@Freg
PrWIN TX_N,    C1+10,25,@Pais
PrWIN TX_N,    C1+10,30,@DtNasc
PrWIN TX_N,    C1+10,35,@Tel

PrWIN TX_N,    C1+10,25,@Pais
PrWIN TX_N,    C1+10,30,@DtNasc
PrWIN TX_N,    C1+10,35,@Tel

PrWIN TX_N,  C1,40,@nif
PrWIN TX_N,  C1,45,@niss

PrWIN TX_N,  c2+15,40,@dtadm
PrWIN TX_N,  C2+15,45,@hab
PrWIN TX_N,  C2+15,50,@prof




'-------------------------------------------------------------------------------
' Posicoes de escrita
'-------------------------------------------------------------------------------
inicioEscritaFer=88
inicioEscritaHst=130
call ColPosHistorico

'-------------------------------------------------------------------------------
' Historico de alteracoes
'-------------------------------------------------------------------------------
PrWIN AJT_B,  Margem, InicioEscritaHst                 'posicao base
PrWIN FON  ,    14,   1                        	'activar fonte
PrWIN TX_N ,  Col1,  -1,"Historico de alterações"
PrWIN FON  ,    10,   1                        	'activar fonte

PrWIN GR_LI, 0, 5, cmax, 5               	'linha
PrWIN GR_LI, 0, 10, cmax, 10               	'linha
PrWIN COR_T,  CorTitLst                         'cor de titulo

PrWIN TX_N,   Col1,5,"Data"
PrWIN TX_N,   Col2,5,"Vencimento"
PrWIN TX_N,   Col3,5,"Categoria"
InicioEscritaHst=InicioEscritaHst+8


'-------------------------------------------------------------------------------
' Ferias
'-------------------------------------------------------------------------------
PrWIN AJT_B,  Margem, InicioEscritaFer                 'posicao base
PrWIN FON  ,    14,   1                        	'activar fonte
PrWIN TX_N ,  Col1,  -1,"Periodos de férias"

PrWIN GR_LI, 0,  5, cmax,  5               	'linha
PrWIN GR_LI, 0, 10, cmax, 10               	'linha
PrWIN GR_LI, 0, 15, cmax, 15               	'linha

anofim = FrmDt$("A4",Sig_DtHoje)
anoini = anofim-2

step=0
for ano=anoini to anofim

   'posicao de escrita
   c1=step*60+10
   c2=c1+20
   c3=c2+20

   txano$="Ano " + FrmVal$(ano,21,-4)

   PrWIN COR_T,  CorTitLst                         'cor de titulo
   PrWIN FON  ,    11,   1                        	'activar fonte
   PrWIN TX_CTR,   C1,5,C2,5,txano$
   PrWIN FON  ,    10,   1                        	'activar fonte
   PrWIN TX_N,  C1,10,"Inicio"
   PrWIN TX_N,  C2,10,"Fim"
   PrWIN TX_N,  C3,10,"Dias"

   linha=MemNum(10)
   mxp=GpeFeriasLer(ano,gpe_mst_trb$)
   for cnt=1 to mxp
      linha=12+cnt*4
      PrWin TX_N, C1,linha, FrmVal$(GpeFeriasPeriodo("I",cnt),44,0)
      PrWin TX_N, C2,linha, FrmVal$(GpeFeriasPeriodo("F",cnt),44,0)
      PrWin TX_N, C3,linha, FrmVal$(GpeFeriasPeriodo("NDU",cnt),21,-2)
   next
   step=step+1
next
end sub

'-------------------------------------------------------------------------------
Sub ColPosHistorico  ' posicao de linhas para historico
'-------------------------------------------------------------------------------
esp=33
Col1=0
Col2=col1+esp
Col3=col2+esp
Col4=col3+esp
Col5=col4+esp
Col6=col5+esp
cmax=187
end sub


'-------------------------------------------------------------------------------
Sub Pw_LinHst  'linha de historico
'-------------------------------------------------------------------------------
call ColPosHistorico
linha=MemNum(10)
PrWIN AJT_B,  Margem, InicioEscritaHst+linha*4             'posicao base
PrWin TX_N, Col1,0, @data
PrWin TX_N, Col2,0, @vencimento
PrWin TX_N, Col3,0, @categoria
End Sub





'-------------------------------------------------------------------------------
Sub Pw_Fim 'fim de listagem
'-------------------------------------------------------------------------------
PrWIN AJT_B,  Margem, 270          	'posicao base
PrWIN GR_LI, 0, 0, MargemD, 0               	'linha
Call SigLstFim
PrWin FP
End Sub
##


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