Files
Guna_Picking/B4A/C_almacen.bas
2023-09-07 14:06:59 -06:00

191 lines
4.8 KiB
QBasic

B4A=true
Group=Default Group
ModulesStructureVersion=1
Type=Class
Version=12.2
@EndOfDesignText@
Sub Class_Globals
Private Root As B4XView 'ignore
Private xui As XUI 'ignore
Private b_cargar As Button
Dim agrupado As String = "0"
Dim reqManager As DBRequestManager
Dim c As Cursor
Private cl_almacen As CustomListView
Private lb_folio As Label
Dim almacencarga As String
Dim almacenselec As String
Dim trabajo As Int
Private p_fin As Panel
Private EditText1 As EditText
Dim RES As String
End Sub
'You can add more parameters here.
Public Sub Initialize As Object
Return Me
End Sub
'This event will be called once, before the page becomes visible.
Private Sub B4XPage_Created (Root1 As B4XView)
Root = Root1
'load the layout to Root
Root.LoadLayout("almacen")
reqManager.Initialize(Me, Starter.DBReqServer)
p_fin.Width = Root.Width
p_fin.Height = Root.Height
End Sub
Sub B4XPage_Appear
trabajo = 0
cl_almacen.AsView.Visible = False
b_cargar_Click
End Sub
'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
Private Sub b_cargar_Click
trabajo = 0
agrupado = "0"
Dim cmd As DBCommand
cmd.Initialize
cmd.Name = "select_agrupado_guna_PICKING"
cmd.Parameters = Array As Object(B4XPages.MainPage.ID_ALMACEN)
reqManager.ExecuteQuery(cmd , 0, "agrupado")
trabajo = trabajo+1
ProgressDialogShow("Cargando")
End Sub
Private Sub lb_folio_Click
Log(Sender.As(Label).Text)
almacenselec = Sender.As(Label).Text
c = Starter.skmt.ExecQuery2("SELECT CAT_ALM_IDALMACEN FROM CAT_ALMACENES WHERE CAT_ALM_NOMBRE = ?",Array As String(Sender.As(Label).Text))
c.Position = 0
almacencarga = c.GetString("CAT_ALM_IDALMACEN")
c.Close
Log(almacencarga)
B4XPages.ShowPage("seleccion")
End Sub
Sub CreateListItem(mostrar As String) As Panel
Dim p As B4XView = xui.CreatePanel("")
p.SetLayoutAnimated(0, 0, 0, 1, 115)
p.LoadLayout("folio")
p.Height= 65dip
' p.Width = clv_orden.GetBase.Width
' lb_folio.Height = p.Height *0.8
lb_folio.Text = mostrar
' Log(p.Width)
Return p
End Sub
Sub JobDone(Job As HttpJob)
If Job.Success = False Then
ToastMessageShow("Error: " & Job.ErrorMessage, True)
Else
If Job.JobName = "DBRequest" Then
Dim result As DBResult = reqManager.HandleJob(Job)
If result.Tag = "agrupado" Then 'query tag
For Each records() As Object In result.Rows
agrupado = records(result.Columns.Get("AGRUPADO"))
Log(agrupado)
Dim cmd As DBCommand
cmd.Initialize
cmd.Name = "select_almacenes_guna_PICKING"
cmd.Parameters = Array As Object(agrupado)
reqManager.ExecuteQuery(cmd , 0, "almacenes")
Starter.skmt.ExecNonQuery("delete from CAT_ALMACENES")
Next
End If
If result.Tag = "almacenes" Then 'query tag
trabajo = trabajo-1
If agrupado <> "0" Then
For Each records() As Object In result.Rows
Dim ALMACEN2 As String = records(result.Columns.Get("IDALMACEN"))
Dim NONBRE_ALMACEN As String = records(result.Columns.Get("NONBRE_ALMACEN"))
Dim agrupado2 As String = records(result.Columns.Get("AGRUPADO"))
Log(agrupado)
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_ALMACENES(CAT_ALM_IDALMACEN, CAT_ALM_NOMBRE, CAT_ALM_AGRUPADO) VALUES (?,?,?)", Array As Object (ALMACEN2,NONBRE_ALMACEN,agrupado2))
Next
cl_almacen.AsView.Visible = True
c = Starter.skmt.ExecQuery("SELECT CAT_ALM_NOMBRE FROM CAT_ALMACENES")
cl_almacen.Clear
For i = 0 To c.RowCount - 1
c.Position = i
cl_almacen.Add(CreateListItem(c.GetString("CAT_ALM_NOMBRE")),i)
Next
c.Close
End If
End If
End If
Job.Release
If trabajo = 0 Then
ProgressDialogHide
Log("estoyaqui")
End If
End If
End Sub
Private Sub b_findia_Click
p_fin.Visible = True
End Sub
Private Sub EditText1_EnterPressed
If EditText1.Text = "FIN DIA" Then
RES = Msgbox2("Seguro que desa hacer el cierre todos los datos se borraran?","Cierre", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore
If RES = DialogResponse.POSITIVE Then
Starter.skmt.ExecNonQuery("delete from CAT_CONVERSION")
Starter.skmt.ExecNonQuery("delete from CAT_DETALLEFOLIO")
Starter.skmt.ExecNonQuery("delete from CAT_FOLIOS")
Starter.skmt.ExecNonQuery("delete from CAT_PICKING")
Starter.skmt.ExecNonQuery("delete from CUENTAA")
Starter.skmt.ExecNonQuery("delete from FECHA")
p_fin.Visible = False
B4XPages.MainPage.seleccion.b_cad.Text = "Fecha consulta"
End If
Else
MsgboxAsync("Escribe FIN DIA para iniciar de nuevo el picking","Atención")
End If
End Sub
Sub B4XPage_CloseRequest As ResumableSub
' BACK key pressed
' Return True To close, False To cancel
If p_fin.Visible Then
p_fin.Visible = False
Else
End If
' Return True
Return False
End Sub