Cuatro tipos de verificación de facturas
1. Verificación de la factura basada en la orden de compra: complete la orden de compra (determine si necesita recibir la orden de compra de acuerdo con la configuración)
2. Verificación de facturas en base a la entrada de mercancías: cumplimente los comprobantes de referencia para las órdenes de compra y los materiales de entrada de mercancías. Necesita verificar la orden de compra, según la verificación de la factura del recibo (después de verificar, la factura solo puede basarse en el recibo)
3. Verificación de facturas sin orden: no complete la orden de compra, cuéntela directamente en el libro mayor o en la cuenta de activos.
error:
Si no se completa lt_bapi_item-po_unit, se producirá un error de que no se especifica la unidad de medida de ISO-CodeSPACE
Si el recibo es acreditado o la devolución es positiva, se informará un error: el monto dado de baja hasta el momento es mayor que el monto prestado
Si la cantidad de verificación de la factura es mayor que la cantidad disponible en el comprobante de referencia, informará un error "La cantidad de compensación es mayor que la cantidad de la factura actual". Por ejemplo, si el monto del descuento es mayor que el monto total al realizar un descuento,
Cuando la cantidad es negativa y se utiliza como nota de crédito, se informará de este error (el artículo de la orden de compra no es una devolución) (por lo que este esquema no funciona).
M8147-No es posible la determinación de la cuenta para la entrada : esta es la diferencia de monto es demasiado grande, monto_bruto no es igual al monto del artículo de línea + monto de impuestos
Diferencias en la verificación de facturas
Si el monto del artículo de línea de verificación de la factura no coincide con el monto del artículo de línea de la orden de compra, hay dos formas de registrar la diferencia según la configuración.
1. Complete el monto real en el artículo de línea y el encabezado durante la verificación de la factura. Según la configuración, cuando se genera el comprobante contable, se calcula automáticamente una cuenta de diferencia de material. En este momento, la cuenta de diferencia está con el número de material.
2. Durante la verificación de la factura, complete el monto de la orden de compra en el artículo de línea, complete el monto real en el encabezado y registre una cuenta de diferencia. En este momento, se contabiliza en la cuenta de inventario de productos básicos, y habrá una cuenta de diferencia (registrada manualmente) al mismo tiempo, y la diferencia no lleva el número de material.
problema
M8 088 envía un error con una cantidad de 0,
Si se basa en la verificación del recibo, el comprobante de referencia entrante se cancela, incluso si se recibe la orden de compra, se informará de este error.
Se puede configurar a través de OMRM. Tenga en cuenta que el estándar es W significa que MIRO no informará un error, por lo que
No se asigna ninguna unidad de medida al código ISO y
Razón: La unidad de medida del pedido y la unidad del precio del pedido son inconsistentes, debe completar PO_PR_UOM_ISO, PO_PR_UOM
4. Tomar datos de referencia para la verificación de facturas.
ME_READ_HEADER_INVOICE
ME_READ_ITEM_INVOICE
MANIFESTACIÓN
formulario de publicación usando ut_out tipo ty_t_out
cambiando cv_belnr cv_msg.
datos ls_out tipo ty_out.
* BAPI
datos: ls_header como bapi_incinv_create_header,
ls_item tipo bapi_incinv_create_item,
tabla de tipo lt_item de bapi_incinv_create_item,
ls_tax tipo bapi_incinv_create_tax,
tabla de tipo lt_tax de bapi_incinv_create_tax,
ls_return tipo bapiret2,
Tabla de tipo lt_return de bapiret2.
datos:
* lv_invno como bapi_incinv_fld-inv_doc_no,
lv_fyear como bapi_incinv_fld-fisc_year.
claro: cv_belnr, cv_msg.
* Verificación de facturas basada en orden de compra
bucle en ut_out en ls_out.
ls_item-invoice_doc_item = sy-tabix.
ls_item-po_number = ls_out-ebeln. "INTRODUZCA EL NÚMERO DE PO
ls_item-po_item = ls_out-ebelp. "INGRESE EL NÚMERO DE ARTÍCULO DEL PO
ls_item-tax_code = ls_out-mwskz. "税 码
ls_item-item_amount = ls_out-netwr. "Excluyendo el monto de impuestos
ls_item-amount = ls_out-fkimg. "数量
ls_item-po_unit = ls_out-meins. "Unidad
ls_item-ITEM_TEXT = p_sh. "Número de identificación fiscal
agregue ls_item a lt_item.
ls_header-monto_bruto = ls_header-monto_bruto + ls_out-hsje.
ls_tax-tax_amount = ls_tax-monto_impuesto + ls_out-mwsbp. "税额
endloop.
agregue ls_tax a lt_tax.
ls_header-invoice_ind = 'X'. "Factura contable (reenviar)
ls_header-pmnttrms = ls_out-zterm. "Condiciones de pago
ls_header-doc_date = P_DATUM. "INTRODUZCA LA FECHA DEL DOCUMENTO
ls_header-pstng_date = ls_out-budat. "INTRODUZCA LA FECHA DE PUBLICACIÓN
ls_header-ref_doc_no = p_sh.
ls_header-comp_code = p_bukrs.
ls_header-gross_amount = ls_header-gross_amount. "Importe total de la factura (impuestos incluidos)
* ls_header-calc_tax_ind = 'X'. "Cálculo automático del importe del impuesto (el importe del impuesto no se puede modificar, no se requieren datos fiscales, pero parece que el monto_bruto todavía se calcula, por lo que el tipo impositivo todavía se calcula)
ls_header-currency = 'CNY'.
llamar a la función 'BAPI_INCOMINGINVOICE_CREATE'
exportador
headerdata = ls_header
* ADDRESSDATA =
importador
invoicedocnumber = cv_belnr
fiscalyear = lv_fyear
mesas
itemdata = lt_item
* ACCOUNTINGDATA =
* GLACCOUNTDATA =
* MATERIALDATA =
taxdata = lt_tax
* SINTAXDATA =
* VENDORITEMSPLITDATA =
return = lt_return
* EXTENSIONIN =
.
si cv_belnr no es inicial.
llamar a la función 'BAPI_TRANSACTION_COMMIT'
exportador
esperar = 'X'.
* cv_msg = 'La verificación de la factura se realizó correctamente, número de factura:' && cv_belnr.
demás.
llamar a la función 'BAPI_TRANSACTION_ROLLBACK'.
cv_msg = 'Error en la verificación de la factura'.
bucle en lt_return en ls_return donde escriba = 'E' o escriba = 'A' o escriba = 'X'.
cv_msg = cv_msg && ',' && ls_return-message.
endloop.
terminara si.
endform. " CORREO