Saltar para o conteúdo principal
Versão: Próximo

WP INSERT FORMULA

WP INSERT FORMULA ( alvoObj ; formula ; modo {; atualizaRange} )

ParâmetroTipoDescrição
alvoObjObjeto🡒Range de elementos ou elemento ou documento 4D Write Pro
formulaObjeto🡒Objeto fórmula
modoNúmero🡒Modo de inserção
atualizaRangeNúmero🡒Inclui ou exclui o conteúdo inserido dentro da range de seleção

Descrição

O comando WP INSERT FORMULA insere uma formula em alvoObj de acordo com um mode de inserção especificado.

No parâmetro alvoObj, pode passar:

  • uma range, ou
  • um elemento (tabela /linha / células / parágrafo / corpo / cabeçalho / rodapé / seção / subseção / imagem inline), ou
  • um documento 4D Write Pro.

No parâmetro formula, passe 4D formula para avaliar em um objeto criado pelos comandos Formula ou Formula from string.

No parâmetro modo, passe uma das constantes abaixo para indicar o modo de inserção a ser usado:

ConstanteTipoValorComentário
wk appendInteiro longo2Insere conteúdos ao final da faixa e atualiza a faixa para conter tanto os conteúdos anteriores quanto os inseridos.
wk prependInteiro longo1Conteúdos inseridos no início da faixa e atualiza a faixa para conter os conteúdos anteriores e os inseridos
wk replaceInteiro longo0Substituir e atualizar conteúdos da faixa; a nova faixa contèm os conteúdos inseridos.
  • se alvoObj for uma range, pode usar o parâmetro opcional AtualizaRange para passar uma das constantes abaixo para especificar se a formula inserida está ou não incluida na range resultante:
ConstanteTipoValorComentário
wk exclude from rangeInteiro longo1Insere conteùdos ao fim da faixa e atualiza a faixa para menter apenas conteúdos anteriores.
wk include in rangeInteiro longo0Insere conteúdos ao início da faixa e atualiza a faixa para manter apenas conteúdos anteriores

Se não passar um parâmetro atualizaRange, por padrão a formula inserida está incluida na range resultante.

  • se alvoObj não for uma range, atualizaRange é ignorado.

Nota: Lembre que quando chamado, o objeto formula é avaliado dentro do contexto do banco de dados ou componentes que o criaram

Exemplo 1

Para substituir todas as fórmulas atuais de data com strings formatadas:

 var $_formulas : Collection
 var $find;$newFormula : Object
 
  // define a fórmula a ser encontrada
 $find:=Formula(Current date)
 
  // define a fórmula de substituição
 $newFormula:=Formula(String(Current date;System date long))
 
  // encontra todas as fórmulas no documento
 $_formulas:=WP Get formulas(WriteProArea)
 
  // pesquisa a coleção de WP Get formulas
 $_formulas:=$_formulas.query("formula.source =:1";$find.source)  
 
  // daí substitui cada fórmula
 For each($formula;$_formulas)
    WP INSERT FORMULA($formula.range;$newFormula;wk replace)
 End for each

Exemplo 2

Se quiser utilizar um nome de fórmula para o nome do cliente:

  //añade algunos datos
 $data:=New object("customer";New object("lastname";"Smith";"firstname";"John"))
 WP SET DATA CONTEXT(WPArea;$data)
 
  //cria um objeto fórmula com um nome
 $o:=New object
 $o.formula:=Formula(This.data.customer.firstname+" "+This.data.customer.lastname)
 $o.name:="Customer name"
 
  //insere como texto
 $range:=WP Text range(WPArea;wk start text;wk end text)
 WP SET TEXT($range;"Dear ";wk append)
 WP INSERT FORMULA($range;$o;wk append)

Resultado:

Ver também

Gestão de fórmulas
WP COMPUTE FORMULAS
WP FREEZE FORMULAS
WP Get formulas