quinta-feira, 14 de maio de 2009

Diferença do e-CNPJ para o Certificado NF-e

Não entendia muito bem, qual a vantagem de compar um Certificado específico para NFe ao invés de comprar um e-cnpj, pois no site da CertSign, encontramos o e-cnpj por 165 reais, enquanto o certificado específico para NFe sai por 250 reais.

No link https://www.identidadedigital.com.br/pergunte, a reposta para a diferença entre os dois certificados é esta:

"Qual é a diferença do e-CNPJ e o Certificado NF-e?

Os dois certificados digitais podem ser utilizados para emissão de Nota Fiscal Eletrônica, pois ambos são emitidos na Infra-Estrutura de Chaves Públicas Brasileira - ICP-Brasil e contêm o número de CNPJ da empresa em seu conteúdo.

A vantagem do certificado NF-e é que ele foi criado unicamente para validar as NF-e e pode ser utilizado pelos funcionários da empresa e não apenas pelo seu representante legal, proporcionando uma maleabilidade na utilização.

Outra diferença é que a estrutura que ele utiliza é mais robusta para verificação e validação dos campos da NF-e, devido ao volume de vezes em que ele é utilizado."

Com a resposta acima, achava que a vantagem era comprar o e-cnpj por ser mais barato, mas neste link
http://robertodiasduarte.blogspot.com/2008/12/certificados-digitais-para-nf-e.html
existe uma explicação de qual a diferença dos dois tipos de certificado.

Leia o trecho abaixo retirado deste link:

"A menos que você seja, o representante legal e o faturista de sua empresa é melhor ter dois certificados: um e-CNPJ para assinar documentos e acessar o e-CAC da RFB e o e-NFe registrado em nome do faturista responsável pela emissão de NF-e.
Se o faturista utiliza um e-CNPJ, ele terá uma procuração em branco de sua empresa.
Com o e-NFe, suas atribuições ficam limitadas representar a empresa no processo de emissão de documentos fiscais.
Contudo, cada faturista deve ter um e-NFe individual e, caso ele seja desligado da empresa, você deve providenciar a revogação do certificado."

Ou seja, por questões de segurança, o indicado para a NFe é usar o certificado específico para NFe, a não ser que quem emita a NFe seja também o representante legal da empresa.

Do site:
http://anfm.blogspot.com/
André Ferreira de Moraes

quarta-feira, 6 de maio de 2009

Como usar o ACBR - Monitor - Passo a Passo

Caros leitores, este post será utilizado para a criação de um passo a passo demonstrando como utilizar o ACBr Monitor em uma aplicação. Aguardem novas postagens...

1 - O que é o ACBr Monitor (http://acbr.sourceforge.net/wiki/index.php/Monitor)

Nada mais que um executável que fica residente na SysTray e se comunica com sua aplicação através de arquivos .TXT ou Sockets (TCP/IP), permitindo assim que seu programa fale facilmente com vários modelos / marcas de Impressoras Fiscais, Impressoras de Cheques, Gavetas de Dinheiro, Displays de Mensagens e Leitores de Cod. Barras Serial.

Os comandos podem ser enviados para o ACBrMonitor por arquivo texto ou sockets, a sintaxe dos comandos é identica em ambos os casos. A resposta dos equipamentos de automação controlados pelo ACBrMonitor (Ex: ECF) será devolvida a Aplicação pelo ACBrMonitor também usando um arquivo texto de saida ou sockets, (conforme a configuração).

2 - Para fazer o Download Abaixo está o link da página:

http://sourceforge.net/project/showfiles.php?group_id=109206&package_id=182935
(o Link ACBrMonitor Atual é para Linux)

Abaixo está o passo a passo da instalação:












Créditos:
JOSÉ JUCÁ DE OLIVEIRA
AV.Capitão Castro, 3294 Centro Vilhena/Ro
69 3321 4575
skype: jose.juca3044
Marcelo Brigatti
Sistemas IES

quarta-feira, 29 de abril de 2009

Anúncio da versão 1.6.66 - em português

Olá a Todos,
O setup da Harbour MiniGUI 1.6 Extended Edition (Build 66) está disponível na seguinte URL:

http://hmgextended.com/files/CONTRIB/hmg-1.6-66-setup.zip

e o Lite build 66 na seguinte URL:

http://hmgextended.com/files/CONTRIB/hmg-1.6-66-setup-lite.zip

Este é o changelog deste build:

2009/04/29: Build 66 (HMG 1.6 Extended Edition) Published.

* Fixado: Não havia nenhuma ação ao clicar o botão no controle BTNTEXTBOX dos resources(introduzido no build 55). Contribuição de Janusz Pora <januszpora@onet.eu>

* Fixado: Multipla execução do evento OnChange ao mudar linha e coluna pelo clique do mouseno controle celled GRID. Baseado em um código emprestado da HMG 2.8.6 Oficial. Contribuição de Grigory Filatov <gfilatov@freemail.ru>
(veja demo2.prg na pasta \samples\Basic\Grid_7)

* Alterado: Função de manipulação de erros da MiniGUI para reduzir o tamanho da library. Contribuição de Grigory Filatov <gfilatov@freemail.ru>

* Aperfeiçoado: O controle BTNTEXTBOX suporta uma cláusula opcional DisableEdit agora.
Requisitado por Jozef Rudnicki <j_rudnicki@wp.pl>. Contribuição de Janusz Pora <januszpora@onet.eu>
(veja demo na pasta \samples\Basic\BtnTextBox)

* Aperfeiçoado: Manutenção da propriedade BLINK para o controle Label em runtime:
- Sintaxe da função:SetProperty ( Form, controle, 'Blink', .T. )
- Sintaxe pseudo-OOP :Form.Label.Blink := .F.
Requisitado por Pedro Chanis <drinol@yahoo.com>.Contribuição de Grigory Filatov <gfilatov@freemail.ru>
(veja demo na pasta \samples\Basic\Blink)

* Atualizado: Library Cputype para compatibilidade com a última mudança do Harbour. Contribuição de Grigory Filatov <gfilatov@freemail.ru> (veja na pasta \Lib)

* Atualizado: Tradução de linguagem para Slovenian em HBPrinter library.
Contribuição de Mitja Podgornik <yamamoto@rocketmail.com>.

* Atualizado: Código fonte da PropGrid library:
- Novo: Cláusula DISABLEEDIT para itens tipo COLOR, FONT, IMAGE, SIZE, ARRAY, FILE, FOLDER, USERFUN para executar valor do get pela função button somente. Contribuição de Janusz Pora <januszpora@onet.eu>
(veja Changelog.txt na pasta \Source\PropGrid edemo3.prg na pasta \samples\Advanced\PropGrid)

* Atualizado: Harbour Compiler 1.1.0dev (SVN 2008-04-27 19:17):

* New: Código fonte da HaruPDF library (veja na pasta \Source\HaruPDF). Contribuição de Grigory Filatov <gfilatov@freemail.ru>
(procure pelo at ReadMe.txt na pasta \harbour e WhatsNew.txt na pasta \harbour\doc)

* Atualizado: HMGS-IDE v.0.8.4. Project Manager e Two-Way Visual Form Designer. Contribuição de Walter Formigoni <walter.formigoni@uol.com.br>
(procure pelo changelog.txt na pasta \Ide)

* Novo: 'Ajuste de Resolução' exemplo. Contribuição de Christian T. Kurowski <xharbour@wp.pl>
(veja demo2.prg na pasta \samples\Advanced\FitToDesktop)

* Novo: 'Haru PDF' exemplo é baseado na Haru Free PDF Library 2.0.8 de http://libharu.sourceforge.net. Contribuição de Pierpaolo Martinello
(veja na pasta \samples\Advanced\HaruPDF)

* Atualizado: 'FDF Form Filler' exemplo. Contribuição de Pierpaolo Martinello (veja na pasta \samples\Advanced\FDF)

* Atualizado: EZTwain exemplo: EZTWAIN.DLL v1.19 2009.02.20 de http://www.dosadi.com. Contribuição de Grigory Filatov <gfilatov@freemail.ru>
(veja na pasta \samples\Advanced\EZTWAIN)

* Atualizado: 'WAIT WINDOW' exemplo
(veja demos na pasta \samples\Basic\WAIT_WINDOW). Baseado num código emprestado da Oficial HMG 2.8.8.

Este release da MiniGUI é considerado estável e pronto para uso em produção.

--Saudações,
Grigory Filatov [MiniGUI Team]

Traduzido por
Marcelo Brigatti [Sistemas IES]

sexta-feira, 14 de novembro de 2008

O QUE É XML ?

XML (eXtensible Markup Language) é uma recomendação da W3C para gerar linguagens de marcação para necessidades especiais. É um subtipo de SGML (acrônimo de Standard Generalized Markup Language, ou Linguagem Padronizada de Marcação Genérica) capaz de descrever diversos tipos de dados.

Seu propósito principal é a facilidade de compartilhamento de informações através da Internet. Entre linguagens baseadas em XML incluem-se XHTML (formato para páginas Web), RDF,SDMX ,SMIL, MathML (formato para expressões matemáticas), NCL, XBRL, XSIL e SVG (formato gráfico vetorial).

Objetivos do XML

Estimulado pela insatisfação com os formatos existentes (padronizados ou não), um grupo de empresas e organizações que se autodenominou World Wide Web Consortium (W3C) começou a trabalhar em meados da década de 1990 em uma linguagem de marcação que combinasse a flexibilidade da SGML com a simplicidade da HTML.
O principio do projeto era criar uma linguagem que pudesse ser lida por software, e integrar-se com as demais linguagens. Sua filosofia seria incorporada por vários princípios importantes:
• Separação do conteúdo da formatação
• Simplicidade e Legibilidade, tanto para humanos quanto para computadores
• Possibilidade de criação de tags sem limitação
• Criação de arquivos para validação de estrutura (Chamados DTDs)
• Interligação de bancos de dados distintos
• Concentração na estrutura da informação, e não na sua aparência
O XML é considerado um bom formato para a criação de documentos com dados organizados de forma hierárquica, como se vê frequentemente em documentos de texto formatados, imagens vetoriais ou bancos de dados.
Pela sua portabilidade, um banco de dados pode através de uma aplicação escrever em um arquivo XML, e um outro banco distinto pode ler então estes mesmos dados.

Site referência do Brasil: http://www.xmlbr.com.br/
Fonte: Wikipédia
___________________________________________________________

1. XML é para estruturar dados

São exemplos de dados estruturados planilhas, cadernos de endereços, parâmetros de configuração, transações financeiras e desenhos técnicos. XML é um conjunto de regras (você também pode encará-las como convenções ou diretrizes) para projetar formatos de texto que o permitam estruturar seus dados. XML não é uma linguagem de programação e você não precisa ser um programador para usá-la ou aprendê-la. XML torna simples para o computador gerar e ler dados, e garantir que sua estrutura não seja ambígua. XML evita os problemas mais comuns em projetos de linguagens; ela é extensível, independente de plataforma e suporta internacionalização e localização. XML é 100% conforme ao padrão Unicode.

2. XML parece um pouco com HTML

Como HTML, XML usa marcadores (palavras envoltas pelos sinais '<' e '>') e atributos (na forma nome="valor"). Mas enquanto HTML especifica o que cada marcador e atributo significa, e às vezes como seu conteúdo aparecerá num navegador, XML usa os marcadores apenas para delimitar os trechos de dados, deixando sua interpretação completamente à cargo da aplicação que os lê. Em outras palavras, ao ver "

" num arquivo XML, não assuma que é um parágrafo. Dependendo do contexto, pode ser um preço, um parâmetro, uma pessoa, um p... — ora, quem disse que a palavra tem que começar por pê?

3. XML é texto, mas não é para se ler

Programas que produzem planilhas, listas de endereços e outros dados estruturados freqüentemente os gravam em disco, usando um formato binário ou textual. Uma vantagem do formato textual é que ele permite às pessoas, se necessário, ver os dados sem usar o programa que os produziu; ou seja, você pode ler um formato textual com o seu editor de textos favorito. Formatos textuais também ajudam os desenvolvedores a depurar mais facilmente as aplicações. Como em HTML, os arquivos XML são arquivos-texto que as pessoas não deveriam precisar ler, mas podem fazê-lo em caso de necessidade. A semelhança diminui quando vemos que as regras para arquivos XML são rígidas. Um marcador esquecido ou um atributo sem aspas inutilizam um arquivo XML, enquanto em HTML tal prática é tolerada e com freqüência explicitamente permitida. A especificação oficial da XML proíbe as aplicações de tentar inferir a intenção do autor de um arquivo defeituoso; se um defeito é encontrado, a aplicação é obrigada a parar ali mesmo e sinalizar um erro.

4. XML é prolixo de propósito

Como XML é um formato textual e usa marcadores para delimitar os dados, os arquivos XML são quase sempre maiores que num formato binário equivalente. Isso é fruto de uma decisão consciente dos projetistas da XML. As vantagens de um formato textual são evidentes (vide item 3), e as desvantagens podem ser geralmente compensadas num outro nível. Espaço em disco já não é tão caro como costumava ser, e programas de compressão como zip e gzip podem comprimir arquivos rápida e eficientemente. Além disso, protocolos de comunicação modernos e o HTTP/1.1, o protocolo central da Web, podem comprimir os dados em trânsito, poupando banda tão eficientemente quanto um formato binário.

5. XML é uma família de tecnologias

XML 1.0 é a especificação que define o que são "marcadores" e "atributos". Além de XML 1.0, a "família XML" é um conjunto crescente de módulos que oferecem serviços úteis para levar a cabo tarefas importantes e muito requisitadas. Xlink descreve uma forma padronizada de inserir hiperlinques num arquivo XML. XPointer e XFragments são sintaxes em desenvolvimento para endereçar partes de um documento XML. Um XPointer parece com um URL, mas ao invés de apontar para documentos na Web, ele aponta para trechos de dados dentro de um arquivo XML. CSS , a linguagem de folhas de estilo, aplica-se tanto a XML como a HTML. XSL é uma linguagem avançada para expressar folhas de estilo. Ela é baseada em XSLT, uma linguagem de transformação usada para rearranjar, adicionar ou apagar marcadores e atributos. O DOM é um conjunto padrão de funções para manipular arquivos XML (e HTML) com uma linguagem de programação. As recomendações Esquema XML 1 e 2 ajudam os desenvolvedores a definir precisamente as estruturas de seus próprios formatos baseados em XML. Há vários outros módulos e ferramentas disponíveis ou em desenvolvimento. Mantenha-se informado na página de relatórios técnicos do W3C.

6. XML é novidade, mas nem tanto assim

O desenvolvimento de XML começou em 1996 e é uma Recomendação W3C desde fevereiro de 1998, o que pode levá-lo a crer que XML é uma tecnologia imatura. Na verdade, esta tecnologia não é muito recente. Antes de XML já existia SGML, desenvolvida no início da década de 80 e padrão ISO desde 1986, largamente utilizada em grandes projetos de documentação. O desenvolvimento de HTML começou em 1990. Os projetistas da XML simplesmente pegaram as melhores partes da SGML, guiados pela experiência acumulada com HTML, e produziram algo que não é em nada menos poderoso que SGML, e amplamente mais regular e simples de usar. Contudo, às vezes é difícil distinguir algumas evoluções de revoluções... E deve ser dito que, enquanto SGML é usada principalmente para documentação técnica e muito menos para outros tipos de dados, com XML ocorre exatamente o oposto.

7. XML leva a HTML à XHTML

Há uma importante aplicação XML que é um formato de documento: é a XHTML, a sucessora da HTML. XHTML tem muitos dos mesmos elementos que HTML, mas a sintaxe foi ligeiramente modificada para se conformar às regras da XML. Uma aplicação que é "baseada em XML" herda a sintaxe de XML e a restringe de certas formas (e.g., XHTML aceita " ", mas não ""); ela também acrescenta significado à sintaxe (XHTML reza que "

" significa "parágrafo", e não "preço", "pessoa" ou qualquer outra coisa).

8. XML é modular

XML permite que você defina um novo formato de documento combinando ou reutilizando outros formatos. Como dois formatos desenvolvidos independentemente podem ter elementos ou atributos homônimos, deve-se ter cuidado ao combinar tais formatos ("

" significa "parágrafo" deste formato ou "pessoa" daquele outro?). Para eliminar a confusão de nomes ao combinar formatos, XML provê um mecanismo de espaços nominais (namespaces). XSL e RDF são bons exemplos de formatos que usam espaços nominais. O Esquema XML foi projetado para reproduzir este suporte à modularidade no nível da definição da estrutura dos documentos XML, tornando fácil combinar dois esquemas para produzir um terceiro que represente uma estrutura de documento híbrida.

9. XML é a base de RDF e da Web Semântica

A Framework para Descrição de Recursos (RDF) é um formato textual XML para descrever recursos e aplicações de metadados, como listas de reprodução de músicas, álbuns de fotos e bibliografias. Por exemplo, RDF permite que você identifique pessoas num álbum de fotos na Web usando informação de uma lista de contatos pessoais; assim, o seu programa de correio poderia automaticamente disparar uma mensagem para essas pessoas dizendo que suas fotos estão disponíveis na Web. Assim como HTML integrou documentos, sistemas de menu e formulários para deslanchar a Web original, RDF integra aplicações e agentes numa Rede (Web) Semântica. Assim como as pessoas precisam concordar acerca do significado das palavras que utilizam para se comunicar, os computadores também necessitam pactuar o significado dos termos para poderem se comunicarem efetivamente. A descrição formal dos termos de uma certa área (comércio ou manufatura, por exemplo) são denominadas ontologias e são uma parte vital da Web Semântica. RDF, ontologias e a representação formal do significado, de modo que os computadores possam ajudar as pessoas em seus trabalhos, são todos tópicos em discussão no grupo Semantic Web Activity.

10. XML é livre de licenças, independente de plataforma e bem suportada

Ao basear um projeto em XML, você herda um vasto e crescente conjunto de ferramentas (uma das quais pode fazer exatamente o que você precisa!) e uma comunidade de engenheiros com experiência na tecnologia. Optar por XML é semelhante a escolher SQL para bancos de dados: você ainda tem que montar sua própria base de dados e os programas e rotinas para manipulá-la, mas há muitas ferramentas disponíveis e muita gente que pode ajudá-lo. E como XML é livre de licenças, você pode criar seu próprio software com ela sem ter que pagar nada a ninguém por isso. O vasto e crescente suporte significa que você não está preso a um simples fornecedor. XML não é sempre a melhor solução, mas vale sempre a pena considerá-la.

Criado em 27/03/1999 por Bert Bos
Traduzido em 19/03/2003 por Marcelo Jaccoud Amaral.

Anúncio da HMG 1.5 (build 59) - Tradução

Olá a Todos,

O setup da Harbour MiniGUI 1.5 Extended Edition (Build 59) está disponível na seguinte URL:

http://hmgextended.com/files/CONTRIB/hmg-1.5-59-setup.zip

e o da Lite build 59 (pelo FreeExtractor) na seguinte URL:
http://hmgextended.com/files/CONTRIB/hmg-1.5-59-setup-lite.zip

Este é o changelog para esse build below:2008/11/14: Build 59 (HMG 1.5 Extended Edition) Published.

* Novo: Comando SET AUTOADJUST ON OFF . Qando setado para ON, os tamanhos de controles e fontes são automaticamente ajustados no resize do form (default é OFF). Ele não opera em Windows Mdi Child e nem em Windows Virtual Dimensioned. Baseado num código emprestado da OOHG. Requesitado por Alfredo Franceschetti <franz@valgraveglia.net>.
Contribuição de Grigory Filatov <gfilatov@freemail.ru> (veja demo na pasta \samples\Basic\Color)
* Novo: Comando SET PROGRAMMATICCHANGE ON OFF . Quando setado para ON, a mudança programática do valor do controle irá executar a procedure OnChange para o Tab e Checkbox (default é ON). Requesitado por Adilson Urso <a.urso@uol.com.br>.
Contribuição de Grigory Filatov <gfilatov@freemail.ru>
* Fixado: DATEPICKER/TIMEPICKER com cláusula 'Field' tem um valor de propriedade inicial errado. Problema foi reportado por Robin D. Cain do fórum oficial da HMG.
Contribuição de Grigory Filatov <mailto:gfilatov@freemail.ru(veja demo na pasta \samples\Basic\DATA_BOUND)
* Atualizado: Limpeza de código para compatibilidade com Pelles C.
Contribuição de Eduardo Fernandes <modalsist@yahoo.com.br>
* Atualizado: HBPrinter library v.2.14 (veja fonte na pasta\source\HbPrinter):
- Fixado: GPF na C-function RR_DEVICECAPABILITIES() em alguns casos. Reportado por Jose Miguel <josemisu@yahoo.com.ar>. Baseado numa contribuição de código de V.Sadonin <sad@transbunker.ru>
- Novo: Comando GET ESCAPE STATUS TO para detectar se o usuário imprimiu o documento (somente após modo PREVIEW) Baseado num código contribuição de Joe Fanucchi <drjoe@meditrax.com>
* Atualizado: Código fonte da library HbSQLite3 (veja na pasta\Source\HbSQLite3):
- Atualizado para usar o SQLITE3 version 3.6.5
Contribuição de Grigory Filatov <gfilatov@freemail.ru> (veja demos nas pastas \samples\Advanced\SQLITE e \samples\Advanced\SQLITE_2)
* Atualizado: Adaptação da FiveWin Class TSBrowse 7.0 em HMG:
- Fixado: Iluminação da célula na mudança de coluna pelo método GoPos(). Reportado por Marcelo Giovane da Silva <drmarcelogiovane@yahoo.com.br>
* Atualizado: Harbour Compiler 1.1.0 dev (SVN 2008-11-12 23:28):
* Atualizado: Código fonte da HbSqlDD library (veja na pasta \Source\HbSqlDD).
Contribuição de Grigory Filatov <gfilatov@freemail.ru> (pesquise pelo ReadMe.txt na pasta \harbour)
* Atualizado: HMGS-IDE v.0.7.5. Project Manager e Two-Way Visual Form Designer.
Contribuição de Walter Formigoni <walter.formigoni@uol.com.br> (pesquise pelo changelog.txt na pasta \Ide)
* Novo: 'Google Directions' exemplo baseado num serviço do Google Maps em http://maps.google.com./
Contribuição de Roberto-CTBA <conexxus@yahoo.com.br> (veja na pasta \samples\Advanced\GoogleDirections)
* Atualizado: Exemplo ButtonEx ( caption em multilinha para botões standards).
Contribuição de Jacek Kubica <kubica@wssk.wroc.pl> (veja demo3.prg na pasta \samples\Basic\Buttonex)
* Atualizado: Exemplo 'Ftp Client' baseado na TIP library.
Contribuição de Walter Formigoni <walter.formigoni@uol.com.br> (veja na pasta \samples\Advanced\FtpClient)

Esta vesão da MiniGUI é considerada estável e pronta para uso em produção.

--Saudações, Grigory Filatov[MiniGUI Team]

--Tradução: Marcelo Brigatti

quinta-feira, 13 de novembro de 2008

Isso só não basta (Minigui/(x)Harbour)

Pessoal, dando continuidade ao objetivo de compartilhar conhecimentos, decidi criar uma nova seção de dicas /tutoriais do tipo O QUE É ?, PARA QUE SERVE ?, AONDE UTILIZAREI ISSO ?, com relação a algumas terminologias da área de TI que por vezes nos pegam desprevinidos.

Com isso estarei repassando noções sobre: XML, .Net, FrameWork, CSS, PHP, ASP, e o que mais for de interesse no âmbito de ligação com sistemas.

Desde já convido a todos amigos e colaboradores que quiserem enviar material a respeito desses tipos de conteúdo, façam-no para: sistemasies@gmail.com, manteremos os créditos dos respectivos autores.

Estarei publicando esses materiais (destinados a uma consulta rápida, observem, não se trata de cursos, somente orientação), simultâneamente neste blog e em meu site, no tópico, minigui/xharbour

Saudações a todos, aguardem para a semana vindoura já os primeiros trabalhos.

Marcelo Brigatti
IES - Informática e Sistemas