Rebajar Precio Costo del producto
Quería pedirles de su ayuda, ya que tengo un dilema como poder realizar el rebaje de los precios de costo del producto ingresado.
Tengo un formulario "Cabecera Facturas de Compra" con un subformulario "Lineas Facturas de Compra" y al cargar los productos en cada linea al final tengo un campo llamado "Actualizar", en este campo tengo una instrucción SQL para actualizar el "Stock", "Ultimo Precio Compra", "Precio Medio Compra" y "PVP 1" (que es el precio por cobrar al público).
Private Sub ACTUALIZAR_LostFocus()
DoCmd.RunSQL "Update ARTICULOS set STOCK=NZ(STOCK_FINAL,0), [Ultimo Precio Compra]=('" & Nz(Me.PrecioCD, 0) & "'*'" & Nz(Me.CANTIDAD_FC, 0) & "')/('" & Nz(Me.CANTIDAD_FC, 0) & "'), [Precio Medio Compra]=((NZ(Stock,0)*NZ([Precio Medio Compra]))+('" & Nz(Me.PrecioCD) & "'*'" & Nz(Me.CANTIDAD_FC) & "'))/('" & Nz(Me.STOCK_FINAL, 0) & "'), [PVP 1]=(((NZ(Stock)*NZ([Precio Medio Compra]))+('" & Nz(Me.PrecioCD) & "'*'" & Nz(Me.CANTIDAD_FC) & "'))/('" & Nz(Me.STOCK_FINAL, 0) & "')*NZ([Beneficio PVP 1]))/(100)+ ((NZ(Stock)*NZ([Precio Medio Compra]))+('" & Nz(Me.PrecioCD) & "'*'" & Nz(Me.CANTIDAD_FC) & "'))/('" & Nz(Me.STOCK_FINAL, 0) & "') where Referencia='" & Me.CODIGO_ARTICULO_FC & "'"
Beep
If MsgBox("DESEAS ACTUALIZAR LA LINEA INGRESADA", vbYesNo + vbQuestion, "ESTAS A PUNTO DE ACTUALIZAR LA LINEA INGRESADA") = vbYes Then
Exit Sub
ElseIf vbNo Then
DoCmd.CancelEvent
End If
End Sub
Este código me funciona bien para todos los campos que les mencione al agregar productos, pero cuando elimino una linea solo me rebaja el stock y me gustaría que también me rebajara los precios y lo he intentado de varias formas, pero no me resulta, yo pensé que, si le agregaba el mismo código solo cambiando el símbolo + por - funcionaria, pero me sale error. Este es el código que tengo cuando elimino una linea.
Private Sub Form_Delete(Cancel As Integer)
DoCmd.RunSQL "Update Articulos set STOCK=NZ(STOCK,0) - " & Nz(Me.CANTIDAD_FC, 0) & "where Referencia='" & Me.CODIGO_ARTICULO_FC & "'"
Beep
If MsgBox("DESEAS ELIMINAR LA LINEA SELECCIONADA", vbYesNo + vbQuestion, "ESTAS A PUNTO DE ELIMINAR LA LINEA SELECCIONADA") = vbYes Then
Exit Sub
ElseIf vbNo Then
DoCmd.CancelEvent
End If
End Sub