Campo total en otra tabla

Tengo dos tablas. La primera, llamada Expedientes, tiene dos campos: Empresas y Facturación. La facturación es un campo numérico que se expresa en euros.

En la otra tabla, Saldos, tengo un campo llamado "Crédito Inicial", otro llamado "Total" y otro llamado "Pendiente". El crédito inicial es un campo numérico que yo introduzco. Pero en el campo "Total" quiero que me aparezca la suma total del campo "Facturación" de la otra tabla.

Por último, el campo "Pendiente" quiero que me recoja la. Diferencia entre el campo "Crédito Inicial" y el campo "Total". Lo he intentado de mil maneras pero no logro que el campo "Total" recoja el total del campo "Facturación" de la otra tabla. ¿Podéis ayudarme? Utilizo Acceso 97 porque es el que tienen en la empresa

1 respuesta

Respuesta
1

Si lo haces en un formulario basta con poner en el evento Al recibir el enfoque, aunque dependiendo de como tengas construido el formulario podría ser en otro evento

Total=dsum("facturacion","Expedientes")

Pendiente=creditoinicial-total

Pero, si quieres que te muestre el total facturación de un determinado número de registros de la tabla Expedientes deberías ponerlo como

Total=dsum("facturación","expedientes","campo que sea= forms!nombredelformulario![el campo que te sirva de criterio]")

Resuelta la cuestión con la fórmula dsum dicha. Pero supongamos que solo quiero que me sume la facturación de los expedientes que son de Madrid, dato que viene recogido en el campo "Localidad" en esa misma tabla expediente. Como meto esa condición?

Puedes hacerlo de muchas formas. Vamos a suponer que tengo la tabla Clientes con un campo Importe, al que por comodidad le he puesto en todos 100 .

Si el control(cuadro de texto o lo que sea) va a ser independiente puedes poner en sus Propiedades-Datos-Origen del control

Con lo que te quedaría así

El inconveniente de esto es que "usas" el origen del control, con lo que para guardarlo en una tabla tendrías que hacerlo en código VB.

Otra forma( personalmente es la que prefiero) sería añadirle un cuadro de texto( en este caso su nombre es Texto2) y en cualquier evento, por ejemplo, Al activar registro del formulario poner

Private Sub Form_Current()
Texto2 = DSum("importe", "clientes", "pais=""Alemania""")
End Sub

La ventaja de esto es que dejas "libre el origen de control, por si quieres guardarlo en una tabla. Hay 11 clientes de Alemania, con lo que al abrir el formulario

En tu caso donde digo Clientes tienes que poner Expedientes, donde pongo Importe pon Facturacion y donde digo pais pon Localidad

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas