quinta-feira, 8 de fevereiro de 2018

Explanação sobre a função IfThen

A função IfThen é útil quando deve-se exibir uma mensagem de acordo com o cenário!

É muito comum nos deparamos com situações em que temos que exibir uma mensagem ao usuário, de acordo com alguma informação obtida após determinado processamento, a fim de deixar o usuário ciente de alguma situação, exemplo:

if loMedia >= 7 then
begin
     showmessage( 'O aluno foi aprovado!' ) ;
end else
begin
     showmessage( 'O aluno foi reprovado!' ) ;
end ;

esta é uma forma bem comum de apresentar uma mensagem de acordo com algum dado. Porém, existe uma forma mais simples de fazê-lo. É através da função IfThen. Usando o exemplo assim, porém através da função IFThen, ficaria assim:

primeiramente declare a biblioteca StrUtils, na seção Interface, após uses.
showmessage( ifThen( loMedia >= 7, 'O aluno está aprovado!', 'O aluno está reprovado!' ) )  ; 

Explicações:

A função IfThen tem os seguintes parâmetros:

- AValue: Boolean // Condição
- const ATrue: string // Retorno da função caso a condição seja TRUE
- AFalse: string = '' // Retorno da função caso a condição seja FALSE (Default é "Vazio")

ficando assim:

IfThen(AValue: Boolean; const ATrue: string; AFalse: string = ''): string;

Espero que seja útil.

Até +

Como criar um ClientDataSet em runtime

Para quem quiser saber como criar um ClientDataSet em runtime!

Existe um velho pré conceito de que programadores RAD não sabem criar componentes em runtime, ou seja, apenas arrastam o componente "dataset" e soltam no form. Pode até ser muito usado, mas saibam que é possível fazer isso também em runtime, e vou explicar agora.

Primeiramente:

Declare na seção interface, após o uses a unit DBClient ;

Após isto, declare uma propriedade chamada FCDSItensVenda do tipo TClientDataSet, por exemplo:

     TfrmMain = class(Tfrm)
     private
          FCDSItensVenda: TClientDataSet ;
     public
          procedure afterConstruction ; override ;
     end;

Na sequência, no método afterConstruction, seguindo o exemplo acima, inclua as seguintes linhas:

procedure TfrmMain.afterConstruction;
begin
     inherited;
     FCDSItensVendas := TClientDataSet.Create( application ) ;
     with FCDSItensVendas.FieldDefs do
     begin
          add( 'NumItem', ftString, 3 ) ;
          add( 'Codigo', ftString, 13 ) ;
          add( 'Descricao', ftString, 60 ) ;
          add( 'Qtd', ftFloat ) ;
          add( 'Vl.Unit', ftCurrency ) ;
          add( 'SubTotal', ftCurrency ) ;
     end ;
     FCDSItensVendas.CreateDataSet ;
end;

Explicações:

FCDSItensVendas := TClientDataSet.Create( application ) ; // Aqui eu crio o objeto FCDSItensVendas

with FCDSItensVendas.FieldDefs do // aqui eu pré fixo o ponteiro na "lista de campos" do objeto FCDSItensVendas

add( 'NumItem', ftString, 3 ) ; // aqui eu crio um campo chamado "NumItem" do tipo "String" cujo tamanho é '3' (três).

FCDSItensVendas.CreateDataSet ; // por fim, monto a estrutura "DataSet", ou seja, instancio uma tabela em memória.

Espero que seja útil!

Até +

quarta-feira, 7 de fevereiro de 2018

A SEFAZ do Ceará disponibilizou um emissor gratuito de MF-e

A SEFAZ-CE disponibilizou uma AC gratuita para empresas de pequeno porte!

Segundo a SEFAZ do Ceará, este AC é voltado para empresário de pequeno porte, porém o processo de ativação é o mesmo que outras empresas seguem.

* Link para download do aplicativo gratuito:

www.sefaz.ce.gov.br/content/aplicacao/internet/download/projetomfe/InstaladorACSefaz_01.03.21_windows.zip

Fontes:
http://www.sefaz.ce.gov.br/content/aplicacao/internet/noticias/enviados/noticia_detalhes.asp?nCodigoNoticia=822

http://cfe.sefaz.ce.gov.br/mfe/informacoes/downloads#/

Até +

SEFAZ do Ceará disponibilizou as Web Services do ambiente de Produção para emissão de NF-e 4.00

A SEFAZ-CE disponibilizou as WS para o ambiente de Produção (tpAmb=1)!!!


Para quem precisa, seguem os endereços:

* Autorização:
https://nfe.sefaz.ce.gov.br/nfe4/services/NFeAutorizacao4?WSDL

* RetAutorização:
https://nfe.sefaz.ce.gov.br/nfe4/services/NFeRetAutorizacao4?WSDL

* Inutilização:
https://nfe.sefaz.ce.gov.br/nfe4/services/NFeInutilizacao4?WSDL

* Consulta protocolo:
https://nfe.sefaz.ce.gov.br/nfe4/services/NFeConsultaProtocolo4?WSDL

* Status do Serviço:
https://nfe.sefaz.ce.gov.br/nfe4/services/NFeStatusServico4?WSDL

* Consulta de cadastro:
https://nfe.sefaz.ce.gov.br/nfe4/services/CadConsultaCadastro4?WSDL

* Recepção de evento:
https://nfe.sefaz.ce.gov.br/nfe4/services/NFeRecepcaoEvento4?WSDL


Fonte: http://nfe.sefaz.ce.gov.br/pages/informacoes/web_services.jsf

Até +

terça-feira, 6 de fevereiro de 2018

Como instalar o Fortes report?

Este framework de relatórios é muito bom, principalmente para quem usa ACBr.

Vou mostrar como instalar o framework "Fortes report".

/* Vou considerar que você já tem algum SVN Client instalado em seu computador (TortoiseSVN, por exemplo) */

1º Passo: Crie um diretório em local da sua preferência, porém o nome do diretório tem que remeter ao Fortes reporte, exemplo: "FORTES" ou "Fortes_report" e etc...

2º Passo: Clique com o botão direito do mouse sobre o diretório recém criado, e então será exibido um pop up, nele você deve clicar em "SVN checkout" (no caso do TortoiseSVN) ;

3º Passo: Na janela "Checkout" que foi exibida, clique no campo "URL of repository:" e insira o seguinte endereço:

https://github.com/fortesinformatica/fortesreport-ce.git

e então clique em "OK" ;

Automaticamente será inicializado o processo de download dos arquivos referentes ao projeto "Fortes". Ao fim, clique em "OK" ;

4º Passo: Acesse o seguinte diretório: <Diretório "Fortes"> \ trunk; Execute o seguinte programa "frceInstall.exe".

Será exibida a janela "Instalador FortesReport Community Edition"

Clique em "Próximo"

Confira se a versão do Delphi está correta, próximo, clique novamente em próximo, clique em "Próximo" e novamente em "Próximo" ;

Clique em "Instalar" ;

Após algum tempo, se tudo estiver correto será exibida a janela informando "Pacotes compilados e instalados com sucesso! Clique em "Próximo" para finalizar a instalação", clique em "OK"

Após clicar em "Próximo", clique em "Finalizar"

Pronto, o Fortes está instalado em seu computador!

Até+

Como evitar produtos de compilação com nomes redundantes

Um exemplo clássico!!!!

Você criar um projeto server COM+, e no final o arquivo gerado fica com o seguinte nome:

"empresa.nomeprojeto.dll.dll"

esquisito né! ".dll.dll"

Para resolver isto é necessário fazer o seguinte:

Com o Delphi aberto, e seu projeto ou grupo de projetos, aberto, clique sobre o ícone do projeto que ao ser compilado gerado a '.dll' ou '.exe' de nome redundante.

Pressione simultaneamente as teclas CTRL + V.

Será exibida a janela do projeto.

Após a diretiva "{$R *.RES}", digite o seguinte "{$E ''}" // são dois apóstrofos, sem espaço.

Compile o projeto, e ao abrir o diretório configurado para receber o produto de compilação, verá que um novo produto foi gerado, desta vez com o nome alterado para:

"empresa.nomeprojeto.dll"

Obs: A diretiva $E tem como finalidade alterar a extensão do produto gerado no processo de compilação.

Até+

quinta-feira, 1 de fevereiro de 2018

Incompatibilidade do TWebBrownser

Seu componente TWebBrownser não está exibindo o reCaptcha do Google no site da SEFAZ?

Para resolver este problema é necessário seguir estes passos:

* abra o regedit do Windows ;

* Vá até o seguinte caminho:

[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION]

* Crie um DWORD com o nome exato do seu projeto, exemplo: "meuprojeto.exe" e atribua o valor hexadecimal ou decimal igual à '0' (zero):



Espero que seja útil para muitas pessoas.

Fonte: https://pt.stackoverflow.com/questions/81186/como-fa%C3%A7o-para-instalar-o-pacote-chromium-em-delphi

Até a próxima!

PHP para iniciantes - Vídeo #1