User Function MNTB4351()
Local aHeader := ParamIxb[1]
Local aCols := ParamIxb[2]
Local nI
Local nContMdo := 1
Local nTpReg := aScan(aHeader,{|x| Trim(Upper(x[2])) == "TL_TIPOREG"})
Local nHrIni := aScan(aHeader,{|x| Trim(Upper(x[2])) == "TL_HOINICI"})
Local nHrFim := aScan(aHeader,{|x| Trim(Upper(x[2])) == "TL_HOFIM" })
Local nQuant := aScan(aHeader,{|x| Trim(Upper(x[2])) == "TL_QUANTID"})
For nI := 1 To Len(aCols)
If aCols[nI][nTpReg] == "M"
If nContMdo > 1
cHoraI := StrTran(cHoraF, ":", ".")
nHoraI := Val(cHoraI) + 0.01
cTest := Str(nHoraI)
If nHoraI >= 10.00
nTest := Val(SubStr(AllTrim(cTest),4,2))
Else
nTest := Val(SubStr(AllTrim(cTest),3,2))
EndIf
If nTest >= 60
nValor := nTest - 60
nHoraI := nHoraI + 01.00 + (nValor/100)
EndIf
nHoraF := aCols[nI][nQuant] + nHoraI
cTest := Str(nHoraF)
If nHoraF >= 10.00
nTest := Val(SubStr(AllTrim(cTest),4,2))
Else
nTest := Val(SubStr(AllTrim(cTest),3,2))
EndIf
If nTest >= 60
nValor := nTest - 59
nHoraF := (nHoraF - (nValor/100)) + 01.00
EndIf
cHoraI := Str(nHoraI)
cHoraI := StrTran(cHoraI, ".", ":")
cHoraF := Str(nHoraF)
cHoraF := StrTran(cHoraF, ".", ":")
If nHoraI >= 10.00
cHoraI := AllTrim(cHoraI)
Else
cHoraI := "0"+AllTrim(cHoraI)
EndIf
If nHoraF >= 10.00
cHoraF := AllTrim(cHoraF)
Else
cHoraF := "0"+AllTrim(cHoraF)
EndIf
aCols[nI][nHrIni] := cHoraI
aCols[nI][nHrFim] := cHoraF
EndIf
cHoraF := aCols[nI][nHrFim]
nContMdo++
EndIf
Next nI
Return aCols