none
como extraer datos de DBaccess y usarlos en formulario para operaciones

    Pregunta

  • hola estoy programando en vb.net 2005
    est es mi problema
    quiero extraer directamente de mi DBaccess alguos datos que ya estan guardados
    para mediante ellos hacer un calculo de una funcion por ejemplo tengo
    A          B          C            D             E
    4          3.5        90          85            8

    quiero sacar esos datos para realizar esta funcion por ejemplo

    function tw(A,B,C,D,E)
    tw=A+B+C+D+E

    Osea directamente de access, ya se como hacer la funcion con datos que estoy metiendo directamente, pero mi problema es SACAR o Extraer
    los datos mediante un sql o no se yo como para su posterior uso gracias

    Por K Vivir En Un Mundo K Nadie Kiere, Si Podemos Vivir En El Mundo K Todos Keremos
    jueves, 08 de octubre de 2009 14:41

Respuestas

Todas las respuestas

  • si los quieres optener directamente de acces
    select (A+B+C+D+E) as tw from tabla1


    Luis Rodolfo De Los Santos H. Misantla Ver Mexico
    jueves, 08 de octubre de 2009 14:51
  • amigo  eres todo un genio, deveras mil gracias es la mejor respuesta que e tenido de este foro, tenia como 5 dias buscando esto.
    como te daras cuenta es algo muy sencillo, ahora esto lo quiero ocupar de esta manera. Olvida esto pasado, es algo similar solo que mas calculos

    --te voy a explicar lo mas detallado posible
    por ejemplo tengo estos registos en access que es mi base de datos la tabla se llama ensayes, tengo los siguientes:

    -- tevoy a mostrar los registros con todo y su declaracion osea que valor pueden tomar o guardar en access.

    + registro        que puede contener                               letra en que la asigno o la quiero guardar en .net para realizar operaciones
    **largo               numero 1, 0.4, 6, 8.3 cualquier num                                x
    **hpv                 string solo H, P, V solo letra                                            y
    **v_az               object null, especificamente 135 o "revisa"String               q
    **m_buz           object null, 0, o cualquier numero                                     p
    **v_buz            object null,especificamente -55 o "revisa"String                 z
    **m_az             object null, cualquier numero o "revisa"String                    r
    **com               string solo letra B o F String                                             s
    **v_orient        numero solo 1, 2, 3                                                           u


    ahora por ejemplo tengo la funcion TW(x, y, z, p, q, r, s, t, u)

    tu sabes que una funcion engloba una o varias operaciones, en este caso son varias y entre ellas mismas ay comparaciones deja te muestro una de ellas.


    'Calculate Variable V_Buz ===============================================
    d1 = -55
    d2 = -55
    d3 = -55
    If IsNull(z) Then
        If u = 1 Then
        z = d1
        ElseIf u = 2 Then
        z = d2
        ElseIf u = 3 Then
        z = "revisa"
        End If
    End If

    'V_Buz ===============================================

    'Calculate Variable M_Buz ===============================================

    If IsNull(p) Then
        If y = "H" Then
        p = 0
        ElseIf y = "V" And s = "B" Then
        p = 90
        ElseIf y = "V" And s = "A" Then
        p = -90
        ElseIf IsNull(s) Or s = "B" Then
        p = 90 + 1
        Else
        p = -90 - z
        End If
    End If

    'M_Buz ===============================================

    como puedes ver uso vario codigo y comparaciones para saber que valor toma cada variable, no te muestro lo demas, solo para que te des
    una idea.
    Al final de todas estas operaciones y comparaciones quiero el resultado de TW

    en mi DBAccess tengo alrededor de 10,000 registros

    ahora mi siguiente pregunta es ¿ Como puedo hacer para guardar largo,hpv,v_az, etc, etc en la variable mencionada x, y, p, q, etc, etc?

    eso por que, por que cada registro de DBAccess es diferente entonces yo al visualizar un registro completo kiero que me guarde ese registro en cada variable

    yo pense en esto.
    -- Poner un boton BTNCALCULAR TWy en él ejecutar la funcion, por que, por que si visualizo los registros en textbox´s mediate un gridview y poner una funcion que tengo para recorrer el grid, pues cada que presione un boton siguiente me va a cambiar los registros y asi cada que presione btncalcularTW me arroja el resultado que quiero, despues quiero el TWdel siguiente registro ago lo mismo presion btnsiguiente y me muestra otros datos, al presionar btncalcularTW nuevamente tomaria de access nuevamente largo, hpv, etc etc y asi variario como yo quiero el valor y no quedaria el pasado y que me calqule el mismo


    En otras palabras cada que presione el boton me va a agarrar en ese momento los valores que necesito, presiono siguiente y luego calculartw, se puede decir me refrescaria esa funcion y tomaria los nuevos valores para un calculo correcto.


    ***  esta es mi diea de todo el calculo y la explico para que tenga la idea que yo tengo, como digo me preguta ahora es
    ¿ Como puedo extraer de access un valor o varios y poderlos guardar uno en cada variable para su posterior uso?

    ojala me alla explicado para que me puedas ayudar que me urge muchisimo estoy desesperado por este terminar este formulario muchas gracias
     


    Por K Vivir En Un Mundo K Nadie Kiere, Si Podemos Vivir En El Mundo K Todos Keremos
    jueves, 08 de octubre de 2009 16:45
  • La verdad es que no acabo de entender tu idea...

    Por que no te creas una clase TW y haces los calculos en código...

    public class TW

    dim x as integer
    dim y as string
    dim q as string
    ...
    ...


    public sub  calcularTW()
        'calculos que ya tienes...
    end sub

    public sub cargarfila()
        'Creas un datareader y un dataset y lees el registro que te interese...
        'asignas los datos del datareader a las variables que quieras...
    end sub

    end class


    Si lo que quieres es hacer todo eso en consultas SQL en Access, es una locura... a no ser me digas te pasas a SQL Server y creas un procedimiento...

    Yo iría hacia una clase o hacía SQLServer (Versión express es gratuita) y procedimientos... pero no me quedaría a medias.

    Iván Noya Cendal
    http://www.seuvella.com

    Si la respuesta te ha ayudado, marcala.
    jueves, 08 de octubre de 2009 16:57
  • es buena respuesta, me puedes explicar el codigo de datareader y dataset como puedo leer los registros y guardarlos en x,y,z,p,etc. veo en lo que busco por internet mencionar mucho datareader y dataset pero no entiendo exactamente que hace cada funcion bueno si he usado el dataset y se que es algo de la tabla pero especificamente no.
    entiendo la logica y es muy buena idea me podrias dar la idea de datareader y dataset
    Por K Vivir En Un Mundo K Nadie Kiere, Si Podemos Vivir En El Mundo K Todos Keremos
    jueves, 08 de octubre de 2009 17:11
  • hola espero no confundirte pero la idea que mencionas la entiendo asi

    -- Poner un boton BTNCALCULAR TW
    --y en él ejecutar la funcion,


    --por que si visualizo los registros en textbox´s mediate un gridview y poner una funcion que tengo para recorrer el grid,
          >aqui mejor carga los datos en un datagridview todos tus valores que necesitas optener

    --cada que presione un boton siguiente me va a cambiar los registros
          >no seria necesario ir avanzando registro por registro, ya que si los tienes vizualizados el usuario
            puede seleccionar el que quiera

    --cada que presione btncalcularTW me arroja el resultado que quiero
           >Esto lo harias opteniendo los valores del registro selecionado en tu datagridview
             x = Me.DataGridView1.Rows(Me.DataGridView1.CurrentRow.Index).Cells("indice o nombre de la columna").Value
             despues de optener los valores llamar a las funciones que necesites
             y muestra el resultado



    ---despues quiero el TWdel siguiente registro ago lo mismo presion btnsiguiente y me muestra otros datos,
        al presionar btncalcularTW nuevamente tomaria de access nuevamente largo, hpv, etc etc y asi variario
        como yo quiero el valor y no quedaria el pasado y que me calqule el mismo

            >y como te dije no necesitas el boton siguiente ya que puedes seleccionar otro registro y
              presinar otrabez btncalcularTW, de esta forma solo harias una con sulta a la bd ya que los
              resultados van a estar en el data grid


    espero se entienda




    Luis Rodolfo De Los Santos H. Misantla Ver Mexico
    jueves, 08 de octubre de 2009 17:48
  • hola amigo como siempre exelente respuesta me has ayudado demaciado en ese dia, fue un calvario el encontrar la respuesta muchas gracias.
    Oye una pregunta, cuando ya pongo una respuesta como buena o marcarla como respuesta mas bien, si les mando una pregunta mas ya no les llegan las altertas de preguntas o ya no responden por que ya se les marco, esto lo pregunto por que no recuerdo si tu o otro usuario despues que le marque una de mis dudas como respuesta y les escribi en esa misma ya no tuve respuesta a que se debe por el momento gracias y voy a marcar tus respuestas espero contestes jaja. Gracias por las respuestas.
    Por K Vivir En Un Mundo K Nadie Kiere, Si Podemos Vivir En El Mundo K Todos Keremos
    jueves, 08 de octubre de 2009 20:11
  • hola yo no llevo mucho tiempo participando en el foro pero si te puedo decir que aunque una pregunta este marcada si se pueden hacer mas comentarios, sobre las alertas almenos ami aveces me llegan al instante y otras veces tardan y te recomiendo que cuando preguntes algo hazlo como una pregunta y no como un debate al menos para diferenciar

    Luis Rodolfo De Los Santos H. Misantla Ver Mexico
    jueves, 08 de octubre de 2009 20:26
  • ok muchas gracias amigo por ayudarme es de agradecerse mucho, ok nos vemos y sigale hechando ganas asi, bueno una pregunta que ganancias tienen ustedes por responder o es nomas asi, no reciben algo

    nos vemos

    Por K Vivir En Un Mundo K Nadie Kiere, Si Podemos Vivir En El Mundo K Todos Keremos
    jueves, 08 de octubre de 2009 20:37
  • voy a hablar por mi ...

    yo estoy empezando a responder porque hace tiempo hize uso de este y otrs foros para ir aprendiendo y solucionando mis problemas y ahora trato de ayudar a otros

    y pues la unica ganancia es el reconocimiento de las personas alas que puedes ayudar ademas hay cosas o preguntas en las que no tengo la mas minima idea de lo quese trata pero me sirve para ir aprendiendo ademas de que en ocaciones a un problema se le dan multiples soluciones y te sirve para que no te quedes con una solo idea y tengas de donde escojer
    y creo que si nos pagaran por responder dime donde me incribo jajaja para que me toque a mi tambien







    Luis Rodolfo De Los Santos H. Misantla Ver Mexico
    jueves, 08 de octubre de 2009 20:48
  • hola amgio se como declarar variables o mas bien eso pienso, pero como o de que tipo se debe de declarar una variable a la que puede
    obtener null osea cuadro vacio tu sabes, que tome en caso de cumplir condicion "revisa" que es stirng o segun las condiciones el numero -55 o 135 como ya te mencione en codigo de arriba

    Por K Vivir En Un Mundo K Nadie Kiere, Si Podemos Vivir En El Mundo K Todos Keremos
    viernes, 09 de octubre de 2009 13:50