Exemplo de TBROWSE com vetores você pode achar em
https://pctoledo.org/forum/viewto ... ores#25389
E o exemplo de apresentação de segundos/horas e horas "00:00" como em branco, veja a seguir:
Código: Selecionar todos
..\\..
coluna := TBColumnNew("Funcionario",{||SUBSTR(ar[02,aindex],1,11)})
ab:addcolumn(coluna)
coluna := TBColumnNew(PADC("Entrada",5),{|| MASCARA(ar[03,aindex]) })
ab:addcolumn(coluna)
..\\..
FUNCTION MASCARA(VHOR)
VHOR:=SUBSTR(SECTOTIME(VHOR),1,5) // função SECTOTIME da CT.LIB
DO CASE
CASE SUBSTR(VHOR,1,5)=" "
VRET:=" "
CASE SUBSTR(VHOR,1,5)=" : "
VRET:="Falta"
OTHERWISE
VRET:=TRANSFORM(VHOR,"99:99")
ENDCASE
RETURN VRET
Antes de tudo, gostaria de ratificar o que eu disse. Eu disse que seria melhor guardar em segundos em lugar de horas. Pois eu disse isso porque não lembrava do que eu tinha feito. Realmente eu estive a ponto de guardar em segundos (o qual não seria problema) mas preferí guardar no padrão HORAS porque seria mais fácil a edição do BD e poder fazer ajustes apenas editando o DBF pelo DBU.
De todas as formas adaptei o meu exemplo. Observe aqui na função MASCARA, que é aqui onde transformo SEGUNDOS em HORAS e onde exibo conforme marcação.
Fiquei curioso em saber se a dica dada pelo colega DMR de assignar
vCAMPOS[09]=´IF(ATRASOS = "00:00",SPACE(05),ATRASOS)´ ao vetor (com aspas simples) no DBEDIT, funcionou para você Miracles ?. Pois não conseguí testar essa dica.
Obs.: Você poderia fazer a gentileza de eliminar a sua segunda mensagem (postagem repetida) ?