Sub GravarRegistros(usuario As Int)
Dim enviados As String = "<> 'enviado'"
If txtPeca.Text <> "" Then
' filtra somente a peça, independente do status
enviados = $" <> '*' and peca = '${txtPeca.Text}'"$
End If
#if DEBUG
' enviados = "<> 'enviado'"
#End If
Dim Cursor As Cursor
Cursor = Main.SQL1.ExecQuery($"Select id, usuario, data, Cliente,
Unidade, ciclo, area, subarea, formulario, peca, grupo, pergunta, resposta, foto
FROM inspecao
where coalesce(status, '') ${enviados} order by id"$)
Dim m As Map, registros As List
registros.Initialize
For i = 0 To Cursor.RowCount - 1
Cursor.Position = i
progresso.Value = i * 100 / Cursor.RowCount
' Dim id As Int = Cursor.Getint("id")
' Dim usuario As Int = Cursor.Getint("usuario")
'
' images.Initialize
m.Initialize
For y = 0 To Cursor.ColumnCount -1
Dim coluna As String = Cursor.GetColumnName(y)
' m.put("usuario", usuario)
If coluna = "foto" Then
If Cursor.GetString(coluna) <> Null Then
Dim base64con As Base64Convert
base64con.Initialize
m.Put(coluna, base64con.EncodeFromImage(File.DirRootExternal, Cursor.GetString(coluna)))
End If
Else
m.Put(coluna, Cursor.GetString(coluna))
End If
Next
registros.Add(m)
Next
Dim json As JSONGenerator
json.Initialize2(registros)
Dim jg As HttpJob
jg.Initialize("", Me)
jg.PostString(Main.URLServidor & "/app/receberjson.php", json.ToString)
Wait For (jg) JobDone (jg As HttpJob)
If jg.Success Then
func.msg(jg.GetString)
' Main.SQL1.ExecNonQuery("UPDATE inspecao set STATUS = 'enviado' where id = " & id)
Else
func.msg("erro 132 " & jg.ErrorMessage)
End If
jg.Release
Dim numeracao As String = Main.SQL1.ExecQuerySingleResult($"select valor from opcoes where opcao = 'numeracao'"$)
Dim jg As HttpJob
jg.Initialize("", Me)
jg.PostString(Main.URLServidor & "/app/receber.php", $"numeracao=${numeracao}&usuario=${usuario}"$)
Wait For (jg) JobDone (jg As HttpJob)
If jg.Success Then
Log("enviado " & i)
Else
func.msg("erro 183 " & jg.ErrorMessage)
End If
jg.Release
' ProgressDialogHide
CarregarLayout
Return
End Sub