Pesquisar neste blog:

20/04/2020

Dinheiro, data e porcentagem em Mala Direta - Como configurar?


Após fazer mala direta (menu correspondência do Word) é necessário configurar os campos. De maneira resumida, clique com o botão direito no campo e depois em "Alternar códigos de campo". Basta adicionar os códigos a seguir, que estão em vermelho, antes de fechar a chave "}". Depois da adição dos códigos, clique com o botão direito e "Atualizar Campo". Veja os exemplos:

{MERGEFIELD Total \# "R$#.##0,00;-(R$#.##0,00)"}
Para valores positivos R$13,31
Dados na Planilha do Excel: 13,31111
Para valores negativos -(R$21,50) 
Dados na Planilha do Excel: -21,5 

{MERGEFIELD Total \# R$.0,00}
R$0,58 no lugar de 0,57700001
Dados na Planilha do Excel: 0,577.
Não recomendado para valores negativos, pois ficarão R$-0,58.

{MERGEFIELD Data \@"d 'de' MMMM 'de' yyyy"}
10 de fevereiro de 2020 no lugar de 2/10/2020.
Dados na Planilha do Excel: 10/02/2020.

{MERGEFIELD Data \@"dd'/'MM'/' yyyy"}
31/12/2020 no lugar de 12/31/2020.
Dados na Planilha do Excel: 31/12/2020.


Outra configuração interessante é a escrita de números por extenso, mas o recurso é válido apenas para números inteiros até 999.999. Para valores monetários a ideia é criar duas fórmulas no Excel, em colunas separadas, e obter a parte inteira para os reais e os decimais para os centavos. Supondo que o número está na célula "A1" temos a fórmula "=INT(A1)" que retorna o valor inteiro. Já os centavos podem ser extraídos pela fórmula "=INT(100*(A1-INT(A1)))". Assim, teremos o valor dividido em dois campos, "reais" e "centavos", configurados pela seguinte fórmula: 

{MERGEFIELD reais \*cardtext} reais e {MERGEFIELD centavos\*cardtext} centavos.
Mil seiscentos e cinqüenta e Dez centavos no lugar de 1650,10.
Dados na Planilha do Excel: 1650,10.


Se você não quiser dividir em duas partes (reais e centavos), então terá que inserir um campo dentro do outro no Word. Para criar um campo basta teclar "Ctrl+f9" e formará "{}". Tecle novamente e terá um campo dentro do outro"{{}}" (Atenção: se colocar as chaves "{}" manualmente elas não formarão um campo). 


{=INT({MERGEFIELD Total \# .0,00})\*cardtext} reais e {=100*( {MERGEFIELD Total \# .0,00} -INT({MERGEFIELD Total \# .0,00}))\# "0"\*cardtext} centavos.

Dados na Planilha do Excel: 1655,331 
Mil seiscentos e cinqüenta e cinco reais e Trinta e três centavos.

Dados na Planilha do Excel: 0,6660001
Zero reais e Sessenta e sete centavos.

Observe que a parte azul do código corresponde aos valores, da mala direta do excel, formatados com duas casas decimais. A  função INT retorna a parte inteira do número, ou seja, o que está antes da vírgula é exibida como reais. Já os centavos são calculados de maneira semelhante à fórmula apresentada anteriormente "=INT(100*(A1-INT(A1)))" convertida para a linguagem do Word.

Para porcentagem utilizaremos um campo dentro do outro (Ctrl+F9 para adicionar o campo, mas atenção, pois não funciona se colocar as chaves "{}" manualmente).

{={MERGEFIELD porcentagem}*100 \# .0,00%}

Dados da Planilha do Excel: 0,2999999999
30,00%

Finalmente, segue a fórmula para configurar em dólares (até USD 999,999,999.99 ) com "," e "." separando os milhares e decimais, respectivamente. (Atenção todas as chaves "{}" deverão ser geradas com "Crtl+F9")

USD{IF{MERGEFIELD dolar}<{=1000}{=INT({ MERGEFIELD dolar})\#"0"}{IF{MERGEFIELD dolar}<{=1000000}{=INT({MERGEFIELD dolar})\#"0','000"}{=INT({MERGEFIELD dolar})\#"0','000','000"}}}.{=MOD({MERGEFIELD dolar};1)*100 \#00}

Aqui, o valor {=1000} tem que ser um campo para transformar o texto "1000" em número. A função MOD(a;1) retorna o resto da divisão de "a" por "1", ou seja, apenas a parte decimal do número.

Dicas importantes: 
1) Para atualizar os campos você poderá teclar "Ctrl+t" para selecionar tudo e depois F9;
2) Não confunda aspas simples ' com aspas dupla ", pois são caracteres distintos e duas simples não formará uma dupla;
3) Você terá que repetir o procedimento de "Alternar códigos de campo" em campo dentro de outros campos;
4) Digirar "{}" não criará um campo, para criar utilize "Ctrl+F9".

Consideração final: a função TEXTO no Excel transforma um número para texto seguindo uma formatação,  exemplo =TEXTO(A1;"0,00"). Assim, o número que estiver em A1 será formatado para duas casa decimais "0,00" e poderá ser importado no Word como texto, sem a necessidade de alterar ou adicionar a formatação no campo do Word.

Um abraço,

16/04/2020

Etiquetas recortadas, intercaladas e ordenadas do PDF para qualquer impressora térmica.

DOWNLOAD DA VERSÃO ATUALTexML 5.5.47 (22/09/2024)



Antes de imprimir sempre conferir os dados da SEGUNDA  e da ÚLTIMA ETIQUETA e suas respectivas intercalações (quando houver).

  

Talvez tenha que clicar na seta e selecionar "Manter", conforme figura abaixo:


Além de clicar em "Mais informações", "Executar mesmo assim" e finalmente em "Extrair".


ATENÇÃO: Programas necessários em sua máquina para o pleno funcionamento:


Assista ao seguinte tutorial de instalação  (NÃO é mais necessário o INKSCAPE).:




Assista ao seguinte exemplo com 300 etiquetas da Shopee:



Assista ao seguinte exemplo com 800 xmls integrados no APP: Controle Envio NF.


Melhorar a qualidade na impressão de alguns PDFs na impressora térmica (Novo canal do YouTube)


Etiquetinhas para caixas de sapatos, roupas



O porquê de utilizar este programa?
  • DEMO: 
    • Economize tempo em sua logística ao intercalar Etiqueta com DANFE - Simplificada Etiqueta (contendo produtos e quantidades)  e ordenar pelo SKU do primeiro produto. (se tiver 20 vendas unitárias de produtos de código "x" todos estarão agrupados, evitando o deslocamento desnecessário no estoque) (Opção válida para MAGALU, SHOPEE XPRESS, e MERCADO LIVRE);
    • São analisados PDFs e XMLs. Não utilizamos o TOKEN ou SENHAS de suas contas/integrações.
    • Funções de intercalação de etiquetas com a declaração de conteúdo (*desde que as declarações não tenham mais de uma folha)
  • Algumas opções são GRÁTIS na primeira aba:
    • especial para  imprimir as etiquetas em impressora térmicas que não interpretam o código "ZPL2", que é utilizado na maioria das plataformas de vendas. Assim, as etiquetas em PDF, vindas dos e-commerces, serão recortadas e formarão um novo PDF com as medidas corretas para impressão térmica.
  • AMBOS:
    • Os PDFs vindos dos e-commerces podem sofrer modificações a qualquer momento. Neste sentido, é necessário a conferência do PDF resultante. Se identificar algum erro entre em contato.

Necessita de uma personalização deste programa?


Problemas na instalação do TexML?

ERRO POSSÍVEIS SOLUÇÕES
0XC000007B
  • Atualize o seu Windows (utilize o Windows Update) até instalar .NET framework 4.8 . Pode ser que você tenha que reiniciar o computador para habilitar mais atualizações;
  • Instale o Adobe Acrobat Reader DC (Se for windows 7 baixe a versão apropriada do Adobe clicando aqui);
  • Para Windows 7 que, ao tentar fazer o update, retorna o erro 80072EFE instale a atualização KB3138612.
O programa roda, mas não abre o PDF resultante.
  • Você instalou o Miktex? Ele é necessário e, somente na primeira execução, pedirá sua autorização para instalar alguns pacotes (demora aproximadamente 3 minutos e são aproximadamente 10 pacotes. Cada pacote precisará de um clique no "Install");
  • Mova a pasta do programa para C:/ (pode ser problema de permissão para acessar os arquivos no Desktop).
O Arquivo está em formato desconhecido ou danificado.
  • Baixe o arquivo de outro navegador;
Janela preta "piscando"
  • A abertura da janela é normal. No canto inferior esquerdo é apresentado em qual etapa o programa está.
api-ms-win-crt-runtime-l1-1-0.dll
Pacote do Miktex não encontrado: Exemplo: "geometry.sty" not found.
Usuário e senha corretos, mas o programa não loga. Verifique a data e horário do seu computador (deve estar correta).
Erro contendo  "... wmic bios get serialnumber ..." Abra o prompt de comando como administrador e execute o seguinte código:
winmgmt /verifyrepository
winmgmt /resetrepository
winmgmt /verifyrepository
sc config winmgmt start= auto
sc start winmgmt
DATA / HORA e FUSO

  • Menu iniciar: "Alterar a data e a hora";
  • Ative "Definir horário automático", bem como "Definir fuso horário automático";
  • Clique em "Sincronizar agora";
  • Reiniciar o PC. 

    Em último caso, clique aqui e veja outra solução.
Outros erros...

  • Apague a pasta C:\TexML
  • Apague o atalho texml.exe da Área de Trabalho.
  • Reinstale a versão atual.
Dicas na impressão.

  • Chrome, na visualização da impressão:
    • Mais definições 
      • Escala: "ajustar à página";
  • Adobe Reader, na visualização:
    • Tamanho: "Ajustar";
    • Orientação: "automático".
  • Se estiver pulando etiquetas em branco:
    • diminua um pouco o tamanho da folha configurada na impressora, por exemplo 99x145mm no lugar de 100x150mm;
    • Calibre a etiqueta (geralmente tem que apertar o botão frontal por um tempo definido e isso varia de impressora para impressora);
    • Em último caso "reset de fábrica" a sua impressora e configure o tamanho do papel.
  • Clique aqui e veja como reiniciar o Spooler de impressão. Isso é aplicado nos casos em que houve algum erro e você não gostaria de reiniciar o computador para voltar a imprimir.


09/04/2020

Instalar GNU OCTAVE e o pacote IMAGE (importar pdf e binarizar)



Como instalar o programa GNU OCTAVE, bem como seus pacotes.
  • IMPORTANTE: Percebi, após a criação do vídeo, que é necessário a instalação do GhostScript  para que o comando "imread" funcione;
  • Download e instalação do GNU octave, em 0:55;
  • Download e instalação do Pacote "image", em 3:15;
  • Importar uma página do PDF, em 5:15;
  • Carregar o pacote e executar o comando im2bw para binarizar, em 6:29.

RESUMO:
  • Baixar e instalar GNU Octave ;
  • Fazer o download do pacote "image";
  • Mudar o "Diretório Atual"  do GNU OCTAVE (GUI) para o local onde está o image-2.12.0.tar.gz;
  • Instale o pacote image (demorou 7 minutos em minha máquina) com o comando:
pkg install image-2.12.0.tar.gz   
%Importar a página 3 do arquivo "in.pdf" ( o PDF deverá estar no "Diretório Atual")
rgb = imread ("in.pdf",3);
imshow(rgb) 
%Carregar o pacote "image" e binarize a imagem gravada na variável "rgb"
pkg load image
bw=im2bw(rgb);
imshow(bw)

Atenção: Se o GhostScript não estiver instalado, o 
programa retornará o seguinte erro:

>> imread("in.pdf")
Magick: "gswin32c" "-q" "-dBATCH" "-dSAFER" "-dMaxBitmap=50000000" "-dNOPAUSE" "-sDEVICE=ppmraw"
"-dTextAlphaBits=4" "-dGraphicsAlphaBits=4" "-r72x72" "-dFirstPage=1" "-dLastPage=1" "-sOutputFil
e=C:\Users\vanin\AppData\Local\Temp\gmncleNd" "--" "C:\Users\vanin\AppData\Local\Temp\gmEh1Xv4" "
-c" "quit" [No such file or directory].
error: Magick++ exception: Magick: Postscript delegate failed (C:\Users\Seu_usuários\Desktop\TexML2.0\IN
entrada\in.pdf) reported by coders/pdf.c:434 (ReadPDFImage)
error: called from
    _imread_ at line 80 column 10
    imageIO at line 118 column 28
    imread at line 106 column 33
*Adicione o caminho "C:\Program Files (x86)\gs\gs9.54.0\bin" no path de sua máquina. Para isso, digite e entre em "Editar as variáveis de ambiente do sistema" no localizar. 



Clique em "Variáveis de Ambiente..." - selecione a linha "Path" - clique em "Editar..." - clique em "Novo" e adicione o caminho "C:\Program Files (x86)\gs\gs9.54.0\bin" com os números vermelhos coerentes com a versão que você instalou.

Um abraço.

SIGA-NOS