Mudanças entre as edições de "Cadastro de Textos Padrões"

(Criou página com 'Aqui é cadastrado textos padrões para serem utilizados nos documentos. Os textos que serão utilizados em cada documento podem ser relacionados sempre do tipo do documento....')
 
(Modelo de Script para o Texto Padrão)
 
(4 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 1: Linha 1:
Aqui é cadastrado textos padrões para serem utilizados nos documentos. Os textos que serão utilizados em cada documento podem ser relacionados sempre do tipo do documento.
+
==='''Conceito'''===
 +
Aqui são cadastrados os textos padrões para serem utilizados nos documentos de forma automática. Os textos que serão utilizados em cada documento podem ser relacionados sempre do tipo do documento. Para os casos onde é necessário a geração dinâmica do texto, podemos utilizar os [[Scripts|scripts]] para geração.
  
===Campos===
+
==='''Registro do Texto Padrão'''===
  
 
*'''Nome:''' Campo para definir o nome do cadastro do Texto Padrão.
 
*'''Nome:''' Campo para definir o nome do cadastro do Texto Padrão.
 +
*'''Origem do Texto:''' Podemos informar um texto fixo, ou automatizado com a utilização de [[Scripts]].
 +
**'''Informado:''' Será habilitado um campo para digitação do texto.
 +
***'''Texto:''' Campo livre para se digitar o texto padrão.
 +
**'''Script:''' Selecionar o script correspondente ao texto esperado. Quando utilizado texto por script no faturamento, a execução do script vai ocorrer apenas na emissão da nota fiscal.
  
====Origem do Texto====
+
==='''Modelo de Script para o Texto Padrão'''===
  
Pode selecionar se irá ser informado o texto e digitado, ou poderá ser via utilização de [[Scripts]].
+
O exemplo abaixo retorna o texto com a forma de cobrança presente na capa do documento. O nome do script deve ser o mesmo nome da função principal do script.
  
Caso a opção seja "Informado", será habilitado um campo para digitação do texto.
+
Function PH_RetornaCampoFormaCobranca(DocumentoID:Int64):String;
*'''Texto:''' Campo livre para se digitar o texto padrão.
+
var
 +
  QForCob:TPHQuery;
 +
begin
 +
  QForCob := NewPHQuery;
 +
  try
 +
    QForCob.Add('SELECT A.NOME '+
 +
                'FROM FORMASCOBRANCA A '+
 +
                'INNER JOIN DOCUMENTOS B ON B.FORMACOBRANCA = A.ID '+                       
 +
                'WHERE B.ID = :DOC ');
 +
    QForCob.ParamByName('DOC').Value := DocumentoID;
 +
    QForCob.Open; 
 +
    if (Trim(QForCob.FieldByName('NOME').AsString) <> '') then
 +
      Result := 'Forma de Cobrança: '+Trim(QForCob.FieldByName('NOME').AsString);
 +
  finally
 +
    QForCob.Free;                           
 +
  end;           
 +
end;

Edição atual tal como às 20h36min de 16 de abril de 2024

Conceito

Aqui são cadastrados os textos padrões para serem utilizados nos documentos de forma automática. Os textos que serão utilizados em cada documento podem ser relacionados sempre do tipo do documento. Para os casos onde é necessário a geração dinâmica do texto, podemos utilizar os scripts para geração.

Registro do Texto Padrão

  • Nome: Campo para definir o nome do cadastro do Texto Padrão.
  • Origem do Texto: Podemos informar um texto fixo, ou automatizado com a utilização de Scripts.
    • Informado: Será habilitado um campo para digitação do texto.
      • Texto: Campo livre para se digitar o texto padrão.
    • Script: Selecionar o script correspondente ao texto esperado. Quando utilizado texto por script no faturamento, a execução do script vai ocorrer apenas na emissão da nota fiscal.

Modelo de Script para o Texto Padrão

O exemplo abaixo retorna o texto com a forma de cobrança presente na capa do documento. O nome do script deve ser o mesmo nome da função principal do script.

Function PH_RetornaCampoFormaCobranca(DocumentoID:Int64):String;
var
  QForCob:TPHQuery;
begin
  QForCob := NewPHQuery;
  try
    QForCob.Add('SELECT A.NOME '+
                'FROM FORMASCOBRANCA A '+
                'INNER JOIN DOCUMENTOS B ON B.FORMACOBRANCA = A.ID '+                        
                'WHERE B.ID = :DOC ');
    QForCob.ParamByName('DOC').Value := DocumentoID;
    QForCob.Open;  
    if (Trim(QForCob.FieldByName('NOME').AsString) <> ) then 
      Result := 'Forma de Cobrança: '+Trim(QForCob.FieldByName('NOME').AsString);
  finally
    QForCob.Free;                            
  end;            
end;