| 4D Write v15WR Find | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 
 | 
    4D Write v15
 WR Find 
         | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| WR Find ( area ; aBuscar ; palavraComp ; maius ; todoODoc ) -> Resultado | ||||||||
| Parâmetro | Tipo | Descrição | ||||||
| area | Inteiro longo |   | Área 4D Write | |||||
| aBuscar | Alpha |   | Cadeia a buscar | |||||
| palavraComp | Inteiro |   | 0=parte da palavra 1=toda a palavra | |||||
| maius | Inteiro |   | 0=ignorar maiúsculas 1=ter em conta maiúsculas | |||||
| todoODoc | Inteiro |   | 0=buscar depois do ponto de inserção 1=buscar em todo o documento | |||||
| Resultado | Inteiro longo |   | Estado da pesquisa | |||||
O comando WR Find permite procurar uma cadeia de caracteres em uma área 4D Write. Pode recuperar a posição das palavras encontradas utilizando o comando WR GET WORDS. Pode recuperar a posição da seleção encontrada utilizando o comando WR GET SELECTION. Se a cadeia de caracteres se encontra, WR Find devolve 1 e seleciona a primeira ocorrência.
Se a pesquisa não teve sucesso, WR Find devolve 0 e a seleção atual não se modifica. Se área não existe, WR Find devolve -1.
palavraComp e maius permitem definir algumas opções da pesquisa.
 No parâmetro palavraComp, pode passar uma das seguintes constantes, que se encontram no tema WR Parameters:
| Constante | Tipo | Valor | 
| wr partial match | Inteiro longo | 0 | 
| wr whole word | Inteiro longo | 1 | 
No parâmetro maius pode passar uma das seguintes constantes, que se encontram no tema WR Parameters:
| Constante | Tipo | Valor | 
| wr ignore uppercase | Inteiro longo | 0 | 
| wr case sensitive | Inteiro longo | 1 | 
todoODoc permite definir se a pesquisa aplica a todo o documento.
Neste parâmetro, pode passar uma das seguintes constantes, que se encontram no tema WR Parameters:
| Constante | Tipo | Valor | 
| wr after insertion point | Inteiro longo | 0 | 
| wr whole document | Inteiro longo | 1 | 
Você pede aos usuários para introduzir a cadeia a procurar, depois realiza a pesquisa:
 ToFind:=Request("Introduzir a palavra a buscar:")
 If(OK=1)
    WR SET SELECTION(Area;0;0)
    If(WR Find(Area;ToFind;wr whole word;wr case sensitive;1)=0)
       ALERT("Não se encontrou nenhuma ocorrência.")
    End if
 End ifEste exemplo propõe um método de pesquisa baseado em palavras chave que procura em uma seleção de registros. A pesquisa é realiza nas áreas Imagem. 
Importante: Se você guardou suas áreas 4D Write nos campos BLOB, consulte o exemplo do comando WR Direct find, que é muito mais rápido.
Seu banco de dados contém receitas de cozinha. As áreas 4D Write são salvadas nos campos Imagem. Você quer encontrar todas as receitas que utilizam um ingrediente específico. Este é o método correspondente:
 ToFind:=Request("Introduzir o ingrediente a buscar:")
  `Criação de um conjunto vazio no qual serão localizados todos os registros encontrados
 CREATE EMPTY SET([MinhasReceitas];"RegistrosEncontrados")
 ALL RECORDS([MisRecetas]) `Navegação por toda a seleção da tabela
 OffscreenArea:=WR New offscreen area
 While(Not(End selection([MinhasReceitas])))
    WR PICTURE TO AREA(OffscreenArea;[MinhasReceitas]PictRecipe_)
    If(WR Find(OffscreenArea;ToFind;1;1;1)=1)
  `Se encontrado o ingrediente, o registro é agregado ao conjunto
       ADD TO SET([MinhasReceitas];"FoundRecords")
    End if
    NEXT RECORD([MinhasReceitas])
 End while
 WR DELETE OFFSCREEN AREA(OffscreenArea)
 USE SET("RegistrosEncontrados")
 OUTPUT FORM([MinhasReceitas];"Saída")
 MODIFY SELECTION([MinhasReceitas];*)
	Produto: 4D Write
	Tema: WR  Gestão de texto
	Número 
        89495
        
        
        
	
	Criado por: 4D Write 6.5
	
	
	
	
	
	
	
	
	4D Write - Linguagem ( 4D Write v15)
	
	
	
	
	
	
	
 Adicionar um comentário
Adicionar um comentário