| 4D v20.1Null | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|  | 
    4D v20.1
 Null 
         | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Null -> Resultado | ||||||||
| Parâmetro | Tipo | Descrição | ||||||
| Resultado | Null |   | Null value | |||||
Null devolve o valor null de tipo null.
Esta função permite afetar ou comparar o valor null dos seguintes elementos da linguagem 4D:
| Elementos da linguagem | Comentários | 
| Valores de propriedades de objetos | A comparação de Null com uma propriedade de objeto devolvido True se o valor da propriedade for null, senão false. Para simplificar o código, comparar Null também retorna true se a propriedade não existir no objeto (ou seja Undefined), ver exemplo 4. | 
| Elementos de coleções | Quando uma coleção for expandida adicionando elementos não adjacentes, todos os elementos intermediários obtêm automaticamente o valor null. | 
| Variáveis de tipo objeto (C_OBJECT) | Ver (*) abaixo | 
| Variáveis de tipo coleção (C_COLLECTION) | Ver (*) abaixo | 
| Variáveis de tipo ponteiro (C_POINTER) | Ver (*) abaixo | 
| Variáveis de tipo imagem (C_PICTURE) | (*) Atribuir o valor null a uma variável deste tipo apaga seu conteúdo. Neste caso, tem o mesmo efeito que chamar ao comando CLEAR VARIABLE | 
| Variáveis variant (C_VARIANT) | 
Nota: este comando não pode ser utilizado com campos escalares do banco de dados. Os valores Null nos campos do banco de dados são gerenciados pelo motor SQL e são gestionados através dos comandos Is field value Null e SET FIELD VALUE NULL.
Se quiser atribuir e testar o valor null com as propriedades dos objetos:
 C_OBJECT(vEmp)
 vEmp:=New object
 vEmp.name:="Smith"
 vEmp.children:=Null
 
 If(vEmp.children=Null) //true
 End if
 If(vEmp.name=Null) //false
 End if
 If(vEmp.parent=Null) //true
 End ifNota: este exemplo requer que a notação objeto esteja ativada no banco de dados.
Se quiser atribuir e comparar o valor null a um elemento coleção:
 C_COLLECTION(myCol)
 myCol:=New collection(10;20;Null)
 ...
 If(myCol[2]=Null)
  // se o 3ro elemento for  null
    ...
 End ifEsses exemplos mostram as várias formas de atribuir ou comaprar o valor null a variáveis:
  //variável objeto
 C_OBJECT($o)
 $o:=New object
 $o:=Null //equivalente a CLEAR VARIABLE($o)
 If($o#Null) //equivalente a If (OB Is defined($o))
 End if  //variável coleção
 C_COLLECTION($c)
 $c:=New collection
 $c:=Null //equivalente a CLEAR VARIABLE($c)
 If($c#Null)
 End if  //variável ponteiro
 C_POINTER($p)
 $p:=->$v
 $p:=Null //equivalente a CLEAR VARIABLE($p)
 If($p=Null) //equivalente a If (Is Nil pointer($p))
 End if  //Variável imagem
 C_PICTURE($i)
 $i:=$vpicture
 $i:=Null //equivalente a CLEAR VARIABLE($i)
 If($i#Null) //equivalente a If (Picture size($i)#0)
 End ifAbaixo os diferentes resultados do comando Undefined assim como do comando Null com propriedades de objeto, dependendo do contexto:
 C_OBJECT(vEmp)
 vEmp:=New object
 vEmp.name:="Smith"
 vEmp.children:=Null
 
 $undefined:=Null(vEmp.name) // False
 $null:=(vEmp.name=Null) //False
 
 $undefined:=Null(vEmp.children) // False
 $null:=(vEmp.children=Null) //True
 
 $undefined:=Null(vEmp.parent) // True
 $null:=(vEmp.parent=Null) //True
	Produto: 4D
	Tema: Linguagem
	Número 
        1517
        
        
        
	
	Criado por: 4D v16 R4
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	Manual de linguagem 4D ( 4D v20)
	
	
	Manual de linguagem 4D ( 4D v20.1)
	
	
	
 Adicionar um comentário
Adicionar um comentário