Crear factura de acreedor

Creado por David Miralpeix, Modificado el Fri, 16 Feb 2024 a las 12:25 PM por David Miralpeix

Script para facilitar la creación de factura de acreedor.


Código VB6:

Sub Main()
  frmAux.Descargar    

  Set lFra = gcn.Obj.DameObjStr("Factura_Acreedor")

  lIdProveedor = InputBox("Indique Proveedor:")
  If Len(lIdProveedor)= 0 Then
    Exit Sub
  End If

  lImporte = InputBox("Indique Importe:")
  If Len(lImporte) = 0 Then
    Exit Sub
  End If

  lCuenta = InputBox("Indique Cuenta Contable:")
  If Len(lCuenta) = 0 Then
    Exit Sub
  End If

  lIdContacto = gcn.damevalorcampo("SELECT TOP 1 IdContacto FROM Prov_Contactos WHERE idTipo=0 AND IdProveedor = '" & lIdProveedor & "'")

  lFra.Propiedades("IdProveedor") = lIdProveedor
  lFra.Propiedades("IdContactoF") = lIdContacto
  lFra.Propiedades("NumFactProv") = 1
  lFra.Propiedades("SerieFactura") = 0
  lFra.Update

  Set lLinea = lFra.Objetos("Factura_Acreedor_Lineas").Add
  lLinea.Propiedades("IdIva") = 0
  lLinea.Propiedades("BaseEuros") = lImporte 
  lLinea.Update

  Set lDesglose = lfra.objetos("Factura_Acreedor_Desgloses").Add
  lDesglose.Propiedades("Subcuenta") = lCuenta
  lDesglose.Propiedades("ImporteEuros") = lImporte / 2 
  lDesglose.Update

  Set lDesglose = lfra.objetos("Factura_Acreedor_Desgloses").Add
  lDesglose.Propiedades("Subcuenta") = lCuenta
  lDesglose.Propiedades("ImporteEuros") = lImporte / 2 
  lDesglose.Update

  lFra.Update
  lFra.Show

End Sub

Código C#:

using AhoraCore;
using AhoraSistema;
using AhoraOCX;
using static AhoraCore.VBA.Interaction;
using AhoraConta;

namespace AhoraScriptsVacia
{
    public class Script_24 : AhoraOCX.AhoraBaseScript
    {
        public void Main()
        {
            IFactura_Acreedor lFra = (IFactura_Acreedor)gCn.Obj.DameObjStr("Factura_Acreedor");

            Valor lIdProveedor = InputBox("Indique Proveedor:");
            if (lIdProveedor.ToString().Length == 0 )
            {
                return;
            }

            Valor lImporte = InputBox("Indique Importe:");
            if (lImporte.ToString().Length == 0)
            {
                return;
            }

            Valor lCuenta = InputBox("Indique Cuenta Contable:");
            if (lCuenta.ToString().Length == 0)
            {
                return;
            }

            int lIdContacto = gCn.DameValorCampo("SELECT TOP 1 IdContacto FROM Prov_Contactos WHERE IdTipo = 0 AND IdProveedor = '" + lIdProveedor + "'");

            lFra["IdProveedor"] = lIdProveedor;
            lFra["IdContactoF"] = lIdContacto;
            lFra["NumFactProv"] = 1;
            lFra["SerieFactura"] = 0;

            lFra.Update();

            IFactura_Acreedor_Linea lLinea = (IFactura_Acreedor_Linea)lFra.Objetos["Factura_Acreedor_Lineas"].Add();
            lLinea["IdIva"] = 0;
            lLinea["BaseEuros"] = lImporte;
            lLinea.Update();

            IFactura_Acreedor_Desglose lDesglose = (IFactura_Acreedor_Desglose)lFra.Objetos["Factura_Acreedor_Desgloses"].Add();
            lDesglose["Subcuenta"] = lCuenta;
            lDesglose["ImporteEuros"] = lImporte / 2;
            lDesglose.Update();

            IFactura_Acreedor_Desglose lDesglose2 = (IFactura_Acreedor_Desglose)lFra.Objetos["Factura_Acreedor_Desgloses"].Add();
            lDesglose2["Subcuenta"] = lCuenta;
            lDesglose2["ImporteEuros"] = lImporte / 2;
            lDesglose2.Update();

            lFra.Update();
            lFra.Show();
        }
    }
}

¿Le ha sido útil este artículo?

¡Qué bien!

Gracias por sus comentarios

¡Sentimos mucho no haber sido de ayuda!

Gracias por sus comentarios

¡Háganos saber cómo podemos mejorar este artículo!

Seleccione al menos una de las razones
Se requiere la verificación del CAPTCHA.

Sus comentarios se han enviado

Agradecemos su esfuerzo e intentaremos corregir el artículo