CREATE TABLE IF NOT EXISTS `vn`.`invoiceInCorrection` (
    `correctingFk` mediumint(8) UNSIGNED NOT NULL COMMENT 'Factura rectificativa',
    `correctedFk` mediumint(8) UNSIGNED NOT NULL COMMENT 'Factura rectificada',
    `cplusRectificationTypeFk` int(10) UNSIGNED NOT NULL,
    `siiTypeInvoiceOutFk` int(10) UNSIGNED NOT NULL,
    `invoiceCorrectionTypeFk` int(11) NOT NULL DEFAULT 3,
    PRIMARY KEY (`correctingFk`),
    KEY `invoiceInCorrection_correctedFk` (`correctedFk`),
    KEY `invoiceInCorrection_cplusRectificationTypeFk` (`cplusRectificationTypeFk`),
    KEY `invoiceInCorrection_siiTypeInvoiceOut` (`siiTypeInvoiceOutFk`),
    KEY `invoiceInCorrection_invoiceCorrectionTypeFk` (`invoiceCorrectionTypeFk`),
    CONSTRAINT `invoiceInCorrection_correctedFk` FOREIGN KEY (`correctedFk`) REFERENCES `invoiceIn` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
    CONSTRAINT `invoiceInCorrection_correctingFk` FOREIGN KEY (`correctingFk`) REFERENCES `invoiceIn` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, 
    CONSTRAINT `invoiceInCorrection_siiTypeInvoiceOut` FOREIGN KEY (`siiTypeInvoiceOutFk`) REFERENCES `siiTypeInvoiceOut` (`id`) ON UPDATE CASCADE,
    CONSTRAINT `invoiceInCorrection_invoiceCorrectionTypeFk` FOREIGN KEY (`invoiceCorrectionTypeFk`) REFERENCES `invoiceCorrectionType` (`id`) ON UPDATE CASCADE,
    CONSTRAINT `invoiceInCorrection_cplusRectificationTypeFk` FOREIGN KEY (`cplusRectificationTypeFk`) REFERENCES `cplusRectificationType` (`id`) ON UPDATE CASCADE
);