//pag;l1;c1;l2;c2;desc;borda;preget;posget;preinc;posinc
 1; 4; 0;22;79;Cadastro de Produtos;;preget_prd();;posinc_prd();
:SKEL
VARIAVEL zFgAbriuGpre = (select('SE_GPRE')=0)
VARIAVEL zBlkPdic6 = "Z_recn:=Recno(),DbSetOrder(3),z_fgExistCod:=(x_operacao=1.and.x_pdic6>0.and.DbSeek(x_pdic6)),"
VARIAVEL zBlkPdic6 = zBlkPdic6 + "z_nil:=if(z_fgExistCod,Mensagem('Esse Codigo de Barras JA ESTA CADASTRADO !',1),''),"
VARIAVEL zBlkPdic6 = zBlkPdic6 + "DbSetOrder(1),DbGoto(Z_recn),!z_fgExistCod.or.x_operacao<>1"
VARIAVEL zb_PeanOk = _CreateBlock( zBlkPdic6, {"x_pdic6"} )
VARIAVEL zBlkPdic6 = ""
COMANDO ANTES M_PITENS = if(m_pitens=0, 1, m_pitens)
COMANDO ANTES zNil = if( zFgAbriuGpre, Abra_Arq('SE_GPRE'), '')
COMANDO ANTES zNil = if( zFgAbriuGpre, DbSelectArea('SE_PROD'), '')
COMANDO DEPOIS zNil = if( zFgAbriuGpre, SE_GPRE->(DbCloseArea()), '')
:TFIE
//pag;l;c;desc;tipo;tam;campo;pict;when;valid;dbname;objcons;chave?;seek?;le;ce;cexib;pictexib
 1; 2; 2;Codigo....:;N; 6;PCOD;999999;.f.;;;
 1; 3; 2;Cod Barras:;N;13;pdic6;9999999999999;;eval(zb_PeanOk,m_pdic6);;;N;; 0; 0;;;
 1; 4; 2;Ref/Fab...:;C;15;PREFFAB;@S13;;;;;N;; 0; 0;;;

 1; 2;32;Descricao.:;C;30;PDESC;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!;;alltrim(m_pdesc)<>"";;;N;; 0; 0;;;
 1; 3;32;Divisao...:;C; 4;PDIVISAO;xxxx;;lastkey()=5 .or. psq_brow;se_subd;psesubd;N;S; 3;51;sddesc;@s25;
 1; 4;32;Fabricante:;N; 4;PPRINCFORN;9999;;lastkey()=5 .or. psq_brow;sccpfab;psccpfab;N;N; 4;51;cp_fantasi;@s25;

 1; 6; 2;Unidade..........:;C; 4;PUNIDADE;!!!!!!!!;;;;;N;; 0; 0;;;
 1; 7; 2;Categoria Fiscal :;C; 3;PCATEGORIA;;;;;;N;; 0; 0;;;
 1; 8; 2;Itens Cxa Fechada:;N; 3;Pitens;999;;;;;N;; 0; 0;;;
 1; 9; 2;NCM - Clas.Fiscal:;N; 8;pCodClaFis;99999999;;;;;N;; 0; 0;;;
 1;10; 2;IPI na Compra....:;N; 5;PIPIENT;99.99;;;;;N;; 0; 0;;;

 1;12; 2;Pr.Tab.Compra..:;N;12;PVluTabCmp;9999999.99;;;;;N;; 0; 0;;;
 1;13; 2;Desc.Neg.Compra:;N;6;PdscCompr;999.99;;;;N;; 0; 0;;;
 1;14; 2;Pr.Liq.Tab.Comp:;N;12;PVLUTab;9999999.99;(m_PVLUTab:=if(m_PVLUTab=0.and.m_PVluTabCmp>0,m_PVluTabCmp*(1-m_PdscCompr/100),m_PVLUTab),.t.);;;;N;; 0; 0;;;
 1;15; 2;Pr.Ult. Compra.:;N;12;PVLUven3;9999999.99;(m_PVLUven3:=if(m_PVLUven3=0,m_PVLUTab,m_PVLUven3),.t.);;;;N;; 0; 0;;;
 1;16; 2;Data da Chegada:;D; 8;PDATACHEGA;99.99.99;(m_PDATACHEGA:=if(Day(m_PDATACHEGA)=0,Date(),m_PDATACHEGA),.t.);;;;N;; 0; 0;;;
 
 1; 6;36;Marca............:;C;15;PREF;@!15;;LASTKEY()=5 .OR. PSQ_BROW;SE_R;PSER;N;S; 0;0;;;
 1; 7;36;Modelo...........:;C;20;PMARCAMODE;@!20;;LASTKEY()=5 .OR. PSQ_BROW;SE_RM;PSERM;N;S; 0;0;;;m_pref+m_pmarcamode;pmarcamode;
 1; 8;36;Cor..............:;C;12;PCOR;@!12;;LASTKEY()=5 .OR. PSQ_BROW;SE_COR;PSECOR;N;S; 0;0;;;
 1; 9;36;Tipo.............:;C; 5;PTIPO;@!5;;LASTKEY()=5 .OR. PSQ_BROW;SE_T;PSET;N;S; 0;0;;;
 1;10;36;Faixa Tamanhos...:;C;10;PTAM;@!10;;;;;N;; 0; 0;;;
 
 1;12;36;Dt Alter. Preco:;D; 8;PDATAalter;99.99.99;(m_PDATAalter:=if(Day(m_PDATAalter)=0,Date(),m_PDATAalter),.t.);;;;N;; 0; 0;;;
 1;13;36;Grupo de Precos:;C;2;PgPreco;!!;;psq_brow;se_gpre;psegpre;N;S;13;60;markup;999.99%; 
 1;14;36;Pr. de Venda...:;N;12;PVLUvenda;9999999.99;(m_PVLUvenda:=if(m_PVLUvenda=0,m_PVLUven3*(1+se_gpre->markup/100),m_PVLUvenda),.t.);;;;N;; 0; 0;;;
 1;15;36;Desc.Max.Venda.:;N; 4;PDESCONTO;99.99;;;;;N;; 0; 0;;;

 
// Descricao dos Precos:    
// pvlutabcmp = preco na tabela do fornecedor
// pdsccompr  = desconto liquido sobre o preco da tabela
// pvlutab    = (este eh o preco que vem faturado na nota fiscal)
//              caso a industria nao subfature, este campo corresponderia ao (pvlutabcmp - %pdsccompr)
//              este campo so nao eh redundante, podendo ser obtido a partir do pvlutabcmp, por conta dos casos de subfatura)
// pvluven3 = preco liquido de custo do produto
// PVluCProm = preco promocional de custo (para os casos em que a industria concede temporariamente desconto extra sobre a tabela)

// 1; 6;46;Aceita Consign.?;C; 1;Pconsig;!;;;;;N;; 0; 0;;;
// 1; 9;46;Repasse .......:;N; 4;Prepasse;99.99;;;;;N;; 0; 0;;;


