msflexgrid

Respuesta de
a
Usuario
Hola experto
Espero y me puedas ayudar con este problema con un botón llamado agregar que agrega datos de los artículos al msflexgrid1 mi formulario es sobre un punto de venta el cual el cliente busca artículos para adquirir o comprar .. entonces al momento de buscar un producto el cliente debe poner la cantidad que desea comprar y le aplana al botton agregar y se agrega al msflexgrid con los datos deseados en una linea el problema es que que si el cliente puso en cantidad 10 y se paso al msflex grid y luego quiere pedir otros 10 del mismo articulo lo que me hace es poner el articulo en otra linea diferente y lo que necesito es que no se repita el articulo en el msflexgrid lo que necesito es que si ia existe el articulo en el msflexgrid solo vaia incrementando la cantidad cada ves que quiera ir agregando más artículos que ia existe si no existe que me pase a otra linea okiss espero y me puedas ayudar con el código en el botton agregar uso este codigoo io no se nada soy un novato si me puedes modificar mi código te lo agradecería infiniitamente
Private Sub Command1_Click()
Dim z As Integer
Dim A As Integer
A = MSFlexGrid1.Rows
If A = 0 Then
   MSFlexGrid1.Rows = 1
   A = MSFlexGrid1.Rows
Else
   MSFlexGrid1.Rows = A + 1
   A = MSFlexGrid1.Rows
End If
 
MSFlexGrid1.Row = A - 1
MSFlexGrid1.Col = 0
MSFlexGrid1.Text = Text1.Text
MSFlexGrid1.Col = 1
MSFlexGrid1.Text = Text2.Text
MSFlexGrid1.Col = 2
MSFlexGrid1.Text = Text6.Text
MSFlexGrid1.Col = 3
MSFlexGrid1.Text = Text3.Text
MSFlexGrid1.Col = 4
MSFlexGrid1.Text = Text6 * Text3
 
 
Label12 = Format(TuNumero, "#,###.#0")
Dim suma As Currency
Dim I As Integer
Dim total As Integer
Dim iva As Integer
total = 0
iva = 0
suma = 0
For I = 1 To MSFlexGrid1.Rows - 1
suma = suma + Val(MSFlexGrid1.TextMatrix(I, 4))
iva = 0.15 * suma
total = iva + suma
Next
Label12 = suma
Label13 = iva
Label14 = total
 
 
End Sub
Experto
Hola
Mira lo que tienes que hacer es usar la base de datos
la persona elije el producto y lo guardas y también lo mostrás en la base
si la persona elije devuelta el producto, preguntas en la base si existe y solo modificas la cantidad o la sumas, sino estas la agregas y después volvés a mostrar lo que eligió en la grilla.
Saludos
Usuario
si asi lo icee me encontre uncodigo que rrecorre las filas y columnas y asi del msflexgrid la vdd no se de codigoss pero cuando digo que me pasen codigoss es paraa saber su utilidad y comprenderloss gracias a unos foros e aprendiidoo ..
am y ai manera dee que lo que se va agregando en el msgflex grid por decir si el precio es 100 y importee 200  como puedo acerlee para quee en el msflexgrid me los muestree asii $100.00  y $ 200.00 io creo que eso se hace de los textbox pero nono encuentro la manera de darle ese formato alos textbx tambien busco darle porfentage ose quiero decir que al momento de ingresar 100 en el textbox y al momento de quitar el cursorr me aparescaa $100.00 ia lo intente desde la spropiedades del txbox en dataformat pero no me funcionaa ai que moverle a algo mas o ai codigooo??
Experto
Hola
Tienes que formatear el numero o usar el componente maskeditbox, que es como el textbox pero permite formatear el numero que ingreses sin necesidad de código.
La mask tienes que ver las propiedades y ahí se ingresa el formato.
Espero que te sirva saludos
Usuario
okss si me funcinooo tendre que modificar todooo mi codigoo peroo ahora como le ago en el de porcenbtajee porque  tengo el costo del producto y le sacare la utilidad y tengo tres listas una de 30% otra de 10% y otra del 18% y tengo quee multiplicarloo por el costo para sacar la utilidad creo que es asii y la utilidad + el costoo me daraa el precio el cual estara en la base de datoss pero no aio como aserle para que salga lo que debe de ser en el list escribi asi 30% pero no me los identificaa
Y el maskeditbox no lo puedo utilizar ai ia que no tiene para listar o si
Espero y me ayudas
Experto
¿Pero dónde te tiene que aparecer el porcentaje en que componente? ¿
Para formatear una grilla
cuando terminas de cargar toda la grilla, disparas un procedimiento que se llame formato de grilla
¿Cómo llenas la grilla? ¿Qué método usas?
Yo utilizo esto para formatear un numero capaz que usando formatnumer o currency podes darle otra onda
For F = 1 To .Rows - 1
        For G = 0 To .Cols - 1
        If G = 4 Then
            x = .TextMatrix(F, G)
            If x <> "" And x <> 0 Then
                Posicion = InStr(x, ".")
                If Posicion > 0 Then
                    x = Left(x, Posicion - 1) & "," & Mid(x, Posicion + 1)
                    x = Format(x, "##0.00")
                    .TextMatrix(F, G) = x
                Else
                    x = Format(x, "##0.00")
                    .TextMatrix(F, G) = x
                End If
           Else
            .TextMatrix(F, G) = ""
        End If
        End If
 
        Next G
    Next F
Recorre la grilla y en la columna que yo le indico hace el formateo
estúdialo mucho y repásalo porque tiende a fallar pero una vez que salio no lo tocas nunca más
saludos
leandro
Usuario
Es diferente pero io no quiero mostrar el porcentaje en la tabla que tengo en el punto de venta que es msflex grid si no que lo quiero agregar en el catálogo de productos el cual lleva la utilidad y se multiplica el costo por la utilidad para sacar el precio ala venta y loss valores los tengo en un combobox son tres valores el cual en la lista del combo box le pongo 30 20 y 10 y quiero que al momento de seleccionar la opción que queramos se conbiertaa en a formato porcentagee io le puse así 30% 20% y 10 % y si le ponía que el costo era 100 me salia 3000 lo que también pienso hacer es abrir un if y decirle que si el valor es 30 que se divida entre cien y lo que salga por el costo y así sacoo las utilidades ... y tengo otra pregunta aver si me puedes ayudar mandándome codigoo al ir agregando al punto de venta los artículos al momento de guardar la factura del punto de venta quiero que en el catálogo de e producto me vaian disminuyendo las existencias
y tambieen una idea de como usar la cantidad escalar del producto no se como ponerlo en el punto de venta se supone que es la misma clave y nombre y código del articulo pero si se venden por cajas la cantidad escalar seria el numero de artículos que trae la cajaa y no se como ponerlo para que se vendan sueltos
amm creo que si resulta mi preguntas de ai sacoo para hacer una más que es de que la clave empiece de 1 y al ir agregando productos que se vaia cambiando la clave automáticamente al momento de guardar
bueno de eso creo y si se como aserlee
 
Espero y no te molesten tantas pregunras que ise pero ia me es urgente ando tronando la materia por unas esa cosas que me faltaroon
 
Experto
Hola
Primero lo primero no te mates poniendo el carácter % en un combo que son todos porcentajes! Ya dejalo claro en el manual o en un label con el titulo porcentajes...
Después si haces el porcentaje y te da 3000 esta mal calculado el porcentaje o no estas usando variables declaradas como double con decimales.
Lo segundo es lógico, eso se resuelve en papel y después ves como lo mostrás
pensalo lógicamente, por lo que veo es un control de stock, entonces
aparententemente tienes 2 controles, por unidad y por pack de unidades
y ahí es que te digo donde juega la lógica, porque si vendes por unidades tienes que tener la existencia cargada por unidad, ahora si también vendes por pack que a su vez suman cantidades entonces tienes que armar la base para que se sepa que un producto entraron 7 pack esos pack contienen SIEMPRE PERO SIEMPRE 10 entonces tienes 70 unidades de es producto, si vendes un pack sabes que tienes que restar 10
imaginando después el sistema, le tienes que dar la opción de elegir al usuario si vende por unidad o por pack y ahí restar la existencia de pack (por ende va a bajar la existencia de unidades)
Bueno, espero que me hayas entendido, pero es algo que tienes que resolver lógicamente y más de esto no te puedo ayudar porque no conozco la empresa que estamos hablando
saludos
leandro
Usuario
Gracias amigo :)
Experto
Hola
Si podes cerrar la pregunta por favor.
Gracias