Jump to content
Fivewin Brasil

JUDSON ROSA

Membros
  • Posts

    263
  • Joined

  • Last visited

  • Days Won

    17

Everything posted by JUDSON ROSA

  1. bom dia , consegui resolver o problema do grupo de formas de pagamento , estava desatualizado a versão da classe . valeu pessoal.
  2. pois é , ja testei de todas as formas , e nao gera grupos de pagamentos , ok aguardo pela ajuda do amigo. bom final de semana
  3. kkk , rosa tem espinhos viu rotinas : // NFCe CLASS TVoNFePag DATA tPag DATA vPag DATA CNPJ_Opc DATA tBand_Opc DAtA cAut_Opc ENDCLASS ***************************** METHOD AddItem( oItem ) CLASS TVoNFe2G local cID, axArray := {},nPos If oItem:Classname=="TVONFEPROD" cID := 'nItem="'+alltrim(str(len(::axItems)+1) ) +'"' aadd(::axItems, {cId,{} } ) aadd(::axItems[len(::axItems),2], {"prod" , ::StruProduto(oItem), 1 } ) aadd(::axItems[len(::axItems),2], {"imposto" , ::StruImpostos(oItem), 1 } ) aadd(::axItems[len(::axItems),2], {"infAdProd", TVoNFeItem():New("C", 0, 1,500,,,oItem:infAdProd )} ) ElseIf oItem:ClassName=="TVONFEREFNF" nPos:=ascan(::axNodes, {|x| x[1]=="ide" } ) if nPos!=0 Do Case Case ::nTipoRef==1 AAdd(::axNodes[nPos,2],{"NFref" , ::SetRefNfe(oItem) }) Case ::nTipoRef==2 AAdd(::axNodes[nPos,2],{"NFref" , ::SetrefNF(oItem) }) Case ::nTipoRef==3 AAdd(::axNodes[nPos,2],{"NFref" , ::SetrefECF(oItem) }) Case ::nTipoRef==4 AAdd(::axNodes[nPos,2],{"NFref" , ::SetrefNFP(oItem) }) EndCase Endif Else if ::cModeloDoc == "55" nPos:=ascan(::axNodes, {|x| x[1]=="cobr" } ) if nPos!=0 aadd(::axNodes[nPos,2], {"fat" , ::StruFatura(oItem) } ) aadd(::axNodes[nPos,2], {"dup" , ::StruDuplicata(oItem) } ) Endif Else nPos:=ascan(::axNodes, {|x| x[1]=="pag" } ) ***************** aqui os pagamentos if nPos!=0 aadd( ::axNodes[nPos][2], { "tPag", TVoNFeItem():new( "N", 1, 1, 02, ,,oItem:tPag ) } ) aadd( ::axNodes[nPos][2], { "vPag", TVoNFeItem():new( "N", 1, 15, , 02,,oItem:vPag ) } ) aadd( ::axNodes[nPos,2], { "card", ::StruCartao(oItem) } ) Endif Endif Endif Return( Nil )
  4. pois esse e o problema a classe nao esta gerando grupos quando tem mais de uma forma de pagamento segue o erro: VoNfeUtil - 21/09/2016 20:02:38 TVONFEUTIL2G:VALIDAXML ENVIASEFAZ 5505 - Erro: XML não atende a especificação do Schema XML: [nfe_v3.10.xsd] , analise a lista de erros: [1 - Linha:0001 Coluna:1916 Campo:[NIHIL] Conteúdo:[NIHIL] Erro:O elemento 'pag' no espaço para nome 'http://www.portalfiscal.inf.br/nfe' apresenta elemento filho 'tPag' no espaço para nome 'http://www.portalfiscal.inf.br/nfe' inválido. Lista de possíveis elementos esperados: 'card' no espaço para nome 'http://www.portalfiscal.inf.br/nfe'. ] - Total de Erros:1 1 - Linha:0001 Coluna:1916 Campo:[NIHIL] Conteúdo:[NIHIL] Erro:O elemento 'pag' no espaço para nome 'http://www.portalfiscal.inf.br/nfe' apresenta elemento filho 'tPag' no espaço para nome 'http://www.portalfiscal.inf.br/nfe' inválido. Lista de possíveis elementos esperados: 'card' no espaço para nome 'http://www.portalfiscal.inf.br/nfe'. so to usando 01 - dinheiro e 02 - cheque , nao to usando 03 - cartao
  5. sim da rejeição , devido ele nao criar um grupo para cada forma de pagamento , para cada forma tem que ter um grupo , ele ta criando td num mesmo grupo como relatei. veja: O correto e para ser assim : -<pag> <tPag>01</tPag> // dinheiro <vPag>200.00</vPag> </pag> -<pag> <tPag>02</tPag> // cheque <vPag>43.75</vPag> </pag> E ESTA FAZENDO ASSIM: ********************************* -<pag> <tPag>01</tPag> // dinheiro <vPag>200.00</vPag> <tPag>02</tPag> // cheque <vPag>43.75</vPag> </pag> to usando a classe do gilmer , alguem que usa passou por isso ????
  6. Bom dia , pessoal o que pode estar errado na minha rotina para pagamento na NFCe, so consigo fazer uma forma , qaundo 2 da erro : O correto e para ser assim : -<pag> <tPag>01</tPag> // dinheiro <vPag>200.00</vPag> </pag> -<pag> <tPag>02</tPag> // cheque <vPag>43.75</vPag> </pag> E ESTA FAZENDO ASSIM: ********************************* -<pag> <tPag>01</tPag> // dinheiro <vPag>200.00</vPag> <tPag>02</tPag> // cheque <vPag>43.75</vPag> </pag> seGUE ROTINA: function loadpgto ( oNFe , WNOTA ) //Rotina usada para gerar as formas de pagamento do XML de envio ***************** dbselectarea("PGTO") dbseek(wnota) do while wnota=pgto->nota .and. !eof() form->(dbseek(pgto->cdfp)) lforma_nome := upper(alltrim(form->desc)) ltpag:="01" if "DINHEIRO" $ lforma_nome ltpag:="01" elseif "CHEQUE" $ lforma_nome ltpag:="02" elseif "CARTAO" $ lforma_nome ltpag:="03" elseif lforma_nome $ "FIADO | CREDIARIO" ltpag:="04" elseif lforma_nome $ "VALE ALIMENTACAO" ltpag:="10" elseif lforma_nome $ "VALE REFEICAO" ltpag:="11" elseif lforma_nome $ "VALE PRESENTE" ltpag:="12" elseif lforma_nome $ "VALE COMBUSTIVEL" ltpag:="13" else ltpag:="99" // OUTROS endif oItem := TVoNFePag() WITH OBJECT oItem // pagamentos :tPag := ltpag // forma de pagamento :vPag := pgto->valo // valor do pagamento END oNFe:AddItem( oItem ) pgto->( dbSkip() ) Enddo return( nil )
  7. Jorge como faço para gerar o grupo novamente ? acho q ai q esta o erro olha minha rotina : dbselectarea("PGTO") dbseek(wnota) do while wnota=pgto->nota .and. !eof() form->(dbseek(pgto->cdfp)) lforma_nome := upper(alltrim(form->desc)) ltpag:="01" if "DINHEIRO" $ lforma_nome ltpag:="01" elseif "CHEQUE" $ lforma_nome ltpag:="02" elseif "CARTAO" $ lforma_nome ltpag:="03" elseif lforma_nome $ "FIADO | CREDIARIO" ltpag:="04" elseif lforma_nome $ "VALE ALIMENTACAO" ltpag:="10" elseif lforma_nome $ "VALE REFEICAO" ltpag:="11" elseif lforma_nome $ "VALE PRESENTE" ltpag:="12" elseif lforma_nome $ "VALE COMBUSTIVEL" ltpag:="13" else ltpag:="99" // OUTROS endif *************************************************************** oIPgto := TVoNFePag() -------------> WITH OBJECT oIPgto // pagamentos :tPag := ltpag // forma de pagamento :vPag := pgto->valo // valor do pagamento END oNFe:AddItem( oIPgto ) ************************************************************ pgto->( dbSkip() ) Enddo Onde pode estar o erro pq ele gera na xml assim: -<pag> <tPag>01</tPag> // dinheiro <vPag>200.00</vPag> <tPag>02</tPag> // cheque <vPag>43.75</vPag> </pag> e a sua é assim: -<pag> <tPag>01</tPag> // dinheiro <vPag>200.00</vPag> </pag> -<pag> <tPag>02</tPag> // cheque <vPag>43.75</vPag> </pag> Desculpe a burrice , mas onde estou pegando ???
  8. acho q esta a mesma coisa so que o meu gera a xml assim: -<pag> <tPag>01</tPag> // dinheiro <vPag>200.00</vPag> <tPag>02</tPag> // cheque <vPag>43.75</vPag> </pag> e acusa este erro: VoNfeUtil - 21/09/2016 16:37:54 TVONFEUTIL2G:VALIDAXML ENVIASEFAZ 5505 - Erro: XML não atende a especificação do Schema XML: [nfe_v3.10.xsd] , analise a lista de erros: [1 - Linha:0001 Coluna:1916 Campo:[NIHIL] Conteúdo:[NIHIL] Erro:O elemento 'pag' no espaço para nome 'http://www.portalfiscal.inf.br/nfe' apresenta elemento filho 'tPag' no espaço para nome 'http://www.portalfiscal.inf.br/nfe' inválido. Lista de possíveis elementos esperados: 'card' no espaço para nome 'http://www.portalfiscal.inf.br/nfe'. ] - Total de Erros:1 1 - Linha:0001 Coluna:1916 Campo:[NIHIL] Conteúdo:[NIHIL] Erro:O elemento 'pag' no espaço para nome 'http://www.portalfiscal.inf.br/nfe' apresenta elemento filho 'tPag' no espaço para nome 'http://www.portalfiscal.inf.br/nfe' inválido. Lista de possíveis elementos esperados: 'card' no espaço para nome 'http://www.portalfiscal.inf.br/nfe'. <
  9. Pessoal nao estou conseguindo colocar mais de uma forma de pagamento na nfce tipo DINHEIRO E CHQUE , o que pode ser ? ***************** dbselectarea("PGTO") dbseek(wnota) do while wnota=pgto->nota .and. !eof() form->(dbseek(pgto->cdfp)) lforma_nome := upper(alltrim(form->desc)) ltpag:="01" if "DINHEIRO" $ lforma_nome ltpag:="01" elseif "CHEQUE" $ lforma_nome ltpag:="02" elseif "CARTAO" $ lforma_nome ltpag:="03" elseif lforma_nome $ "FIADO | CREDIARIO" ltpag:="04" elseif lforma_nome $ "VALE ALIMENTACAO" ltpag:="10" elseif lforma_nome $ "VALE REFEICAO" ltpag:="11" elseif lforma_nome $ "VALE PRESENTE" ltpag:="12" elseif lforma_nome $ "VALE COMBUSTIVEL" ltpag:="13" else ltpag:="99" // OUTROS endif oIPgto := TVoNFePag() WITH OBJECT oIPgto // pagamentos :tPag := ltpag // forma de pagamento :vPag := pgto->valo // valor do pagamento END oNFe:AddItem( oIPgto ) pgto->( dbSkip() ) Enddo
  10. valeu aferra , mas o problema foi o WS da NF-e , tava usando o SVRS e para NFCE é o svrs , ok essa etapa passei agora deixa eu seguir adiante , qualquer coisa posto aqui , abraço
  11. queria msm q tivesse enviado errado mais na xml ta <mod>65</mod> , le que qualquer valor que vc coloque no mod diferente de 55 da essa mensagem , sera que to errado alguma coisa na hora de chamar a funcao para NFCE ?? como tenho pouco conhecimento nessa parte de NFCE por isso que mandei parte do fonte
  12. Bom dia , alguem pode me dar uma dica o porque desse Rejeição (450): Modelo da NF-e difere de 55 pois estou colocando oNFe:SetValue("ide" , 'mod' , "65" ) , ja visualizei a xml esta com 65 . segue parte do codigo: Function EnviaSefaz (cDocXml,cTipoAmbiente,oNfeUtil,cChaveAcesso,cXmlAssinado,cRecibo,wnota , oSayMsg , oSayDet ) ******************* wnota:=strzero(val(wnota),10) cCertificado := GetPvProfString( "CONFIGURACAO", "CERTIFICADO", "", "VoNfeCertSign.Ini") If oNfeUtil==Nil oNFeUtil := TVoNFeUtil2G():New(cEstadoEmitenteNFe, cTipoAmbiente, cCertificado,,,,cLicenca,.t.,lcontingencia,lnfce) Endif if oNFeUtil == Nil return( .f. ) Endif If Empty(oNFEUtil:cCertificado) MsgInfo("Informe um certificado Valido!","Atenção") oNfeUtil:End() Return( .f. ) Endif WritePProString( "CONFIGURACAO", "CERTIFICADO", oNFeUtil:cCertificado, "VoNfeCertSign.Ini" ) // Faz validação para NFe if !oNFeUtil:ValidaXml(cDocXml, 52 ) // mudou aqui para versao 3.00 ( 19 ) oNfeUtil:End() return( .f. ) Endif ** NFCE ** cCertificado := GetPvProfString( "CONFIGURACAO", "CERTIFICADO", "", "VoNfeCertSign.Ini") idtoken := defa->idtoken // "000001" // incl. defa n_csc_sefaz := alltrim(defa->csc_sefaz) // "007610711607221221337235" // incl. defa versaoQRCode := "100" URLConsulta := "" indSinc := "0" resultado_dll := 0 msgResultado := "" lote := "" URLNFCe := "" objNFeUtil := CreateObject("NFe_Util_2G.util") retornoAssinar := "" acDocXml := cDocXml retornoAssinar := objNFeUtil:AssinarNFCE( @cDocXml,cCertificado,idtoken,n_csc_sefaz,versaoQRCode,@URLConsulta,indSinc,@resultado_dll,@msgResultado,@lote,@URLNFCe ) cDocXml := retornoAssinar ** NFCE ** // cXmlAssinado := "" cRecibo := "" cDataRecebimento := "" if oNFeUtil:EnviaNFe( cDocXml, @cXmlAssinado, @cRecibo , @cDataRecebimento) // > 100 wnfe_saydest:="Codigo de Acesso: "+cChaveAcesso + CRLF +; " Recibo: "+cRecibo + CRLF +; "Dia/Hora do Recebimento: "+cDataRecebimento oSayDet:setcolor(CLR_BLUE, CLR_LBLUE) oSayDet:refresh() dbselectarea("vend") ; dbsetorder(1) dbseek(wcdmo+wnota+wseri) if trava(2) replace chave with cchaveacesso , recibo with crecibo , recebi with oNFeUtil:Recebimento dbunlock() endif // tela da nfe wkey_acesso:=vend->chave ; oSaykey_acesso:refresh() oSayMsg:ctitle("Pedir autorização a Secretaria da Fazenda...") ; oSayMsg:refresh() else msginfo('Não foi possível enviar NFC-e. Tente novamente','Atenção') sefazsair := .t. Endif oNfeUtil:End() Return( .t. ) No aguardo ...
  13. ok valeu ai pela força pessoal ja me credenciei na sefaz para testar em modo de homologacao , vou entao mandar ver qualquer duvida posto aqui, adeus final de semana
  14. bom dia , uso sim a classe do gilmer com flexdocs , baixei aqui o manual do projeto nfc-e versao 3.2 de abril 2014 , e esse tipo de marial q to precisando se tiver um mais novo , e na flexdocs onde acho sobre a nfc-e ??
  15. Bom dia , Caro Marsan , vc consegui fazer o seu nfc-e ? , agora estou nessa luta to igual a vc nem sei por onde começar , uso a flexdocs na minha nf-e ja a muito tempo , gostaria que vc ou alguem me desse uma luz onde encontro material para o desenvolvimento tambem na flexdocs , desde ja obrigado , no aguardo
  16. Ola , fiz como o Elcio mandou , 1 -criei o meu proprio bitmap e coloquei na meu .res ( eu uso o pelles ) com o nome G_MSG_BAR , ja que a cor que eu quero e diferente da dele . 2 - adicionei a rotina abaixo ao meu sistema: function MsgBar2007() return ( LoadBitmap( GetResources(), "G_MSG_BAR" ) ) No fonte source\classes\msgbar.prg se vc der uma olha la tem a chamada dessa funcao MsgBar2007 , mas so vai funcionar se vc colocar 2007 no set message e pronto , qualquer coisa to no skype procura JUDSON ROSA COSTA.
  17. A todos e o Elcio , meu muito obrigado funcionou perfeitamente , valeu msm qualquer coisa estou a disposição.
  18. Opa , Elcio vou testar amigo e reporto aqui o resultado , valeu
  19. Isso mesmo marcio , mas essa cor ela ja veem quando colocamos 2007 , eu consigo mudar a cor das letras mas o fundo degrade nao .
  20. e sim everton , veja ai como faço: // Definido e Abrindo Tela Principal DEFINE WINDOW oWnd TITLE nempresa ; FROM 0, 0 TO 100,100 ; // acoor_v, acoor_H ; PIXEL ; ICON oIco01 ; BRUSH oBrush01 SET MESSAGE OF oWnd TO " "+w_house FONT vfonts[03] 2007 COLOR 255,0 // CLR_GREEN,CLR_WHITE Coloquei do jeito q vc disse e nada . So funciona se eu tirar o 2007. mas quero o 2007 porque fica um degrade na cor , o que eu quero e mudar essa cor em degrade.
  21. Pessoal ja pesquisei aqui no fórum e não consegui encontrar e ou não deu certo mudar a cor na barra do set message 2007 ou colocar um bitmap : SET MESSAGE OF oWnd TO " "+w_house COLOR CLR_GREEN,CLR_WHITE FONT vfonts[03] 2007 Define MsgItem aItemMsg_Fone OF oWnd:oMsgBar; Prompt w_fone Size 300 ; COLOR CLR_GREEN , CLR_WHITE FONT vfonts[03] pixel Define MsgItem aItemMsg_Versao OF oWnd:oMsgBar; Prompt "Ver: "+w_vers Size 80 ; COLOR CLR_GREEN , CLR_WHITE FONT vfonts[03] pixel Define MsgItem aItemMsg_Servidor OF oWnd:oMsgBar; Prompt iif( cServidor == "S", " SERVIDOR ", " ESTAÇÃO " ) Size 100 ; COLOR CLR_GREEN , CLR_WHITE FONT vfonts[03] pixel left Define MSGITEM aItemMsg_usuario OF oWnd:oMsgBar ; PROMPT "Usuário: "+alltrim(vUsuarios) SIZE 150 ; COLOR CLR_RED , CLR_WHITE FONT vfonts[03] pixel BITMAP "BMP_RUN" oWnd:oMsgBar:KeybOn() oWnd:oMsgBar:DateOn() oWnd:oMsgBar:ClockOn() No aguardo..
  22. Nao sei explicar o porque , mas dessa forma eu uso e da certinho.
  23. eu uso assim: DEFINE DIALOG oDlg01 RESOURCE "BROW_GERAL" ICON oIco01 ; title "Cadastro de Grupos" oDlg01:lHelpIcon := .F. oBro01 := TXBrowse():New( oDlg01 ) oBro01:nMarqueeStyle := MARQSTYLE_HIGHLROW oBro01:nColDividerStyle := LINESTYLE_LIGHTGRAY oBro01:nRowDividerStyle := LINESTYLE_LIGHTGRAY oBro01:l2007 := .T. oBro01:bClrHeader := {|| {CLR_BLACK,CLR_LGREEN} } oBro01:bClrSelFocus := {|| {CLR_WHITE,CLR_LGREEN2} } oBro01:bClrSel := {|| {CLR_BLACK,CLR_LGREEN} } oBro01:bSeek := {|c| DbSeek( Upper( c ) ) } oCol := oBro01:AddCol() oCol:cHeader := "Código" oCol:bStrData := { || grup->cdgr } oCol:nDataStrAlign := AL_LEFT oCol:nHeadStrAlign := AL_LEFT oCol:nWidth := 100 oCol:bLClickHeader := {|| Checa_Indices(1,1,oBro01,"GRUP") } oCol:AddBmpFile( "BMP\BLANK.BMP", .T. ) oCol:AddBmpFile( "BMP\CLIP.BMP", .T. ) oCol:nHeadBmpNo := 1 oCol := oBro01:AddCol() oCol:cHeader := "Descrição" oCol:bStrData := { || if(ltipo_banco = "MySQL",grup->descr,grup->desc) } oCol:nDataStrAlign := AL_LEFT oCol:nHeadStrAlign := AL_LEFT oCol:nWidth := 500 oCol:bLClickHeader := {|| Checa_Indices(2,2,oBro01,"GRUP") } // , oDlg01:refresh() ,oBro01:refresh() } oCol:AddBmpFile( "BMP\BLANK.BMP", .T. ) oCol:AddBmpFile( "BMP\CLIP.BMP", .T. ) oCol:nHeadBmpNo := 2 oBro01:SetRDD() oBro01:CreateFromResource( 111 ) aEval( oBro01:aCols, { |oCol| oCol:bLDClickData := { || ( Click(), F_Sii1102( 1, "A") ) } } ) // Editar o tipo Com os teclas ENTER , INSERT , DEL oBro01:bKeyDown := { | nKey | IF( nKey = VK_RETURN .or. nkey = VK_INSERT .or. nkey = VK_DELETE, ; ( Click(), F_sii1102( 1, if(nkey=VK_RETURN,"A",if(nkey=VK_INSERT,"I","E")) ), oBro01:refresh() , oBro01:SetFocus() ), ) } oBro01:bClrStd := { ||{CLR_BLACK, IIF( ( oBro01:cAlias )->( OrdKeyNo() ) %2 == 0, ; CLR_LGRAY , CLR_WHITE ) }} oBro01:bChange := {|| oBro01:refresh() } ACTIVATE DIALOG oDlg01 CENTER ON INIT ( Bar_Sii1102() )
×
×
  • Create New...