У меня есть запрос в базе данных Access, и когда я пытаюсь его запустить, я получаю сообщение об ошибке «запрос слишком сложен для выполнения». Ошибка выполнения 3360. «Проблема в одной формуле / логике программирования, см. Ниже:

Ранее формула была ниже - и это работало.

IIf([BegTaxBasis]=0 And [Contribution]+[Distribution]=0,0,IIf([BegTaxBasis]=0 And [TaxIncSubTotal]=0,-[Distribution],IIf([Distribution]=0,0,IIf([TBBLL]+[Recourse]+[QualifiedNonrecourse]+[NonRecourse]<[Distribution],-[Distribution],0)))) 

Подробная версия выше была бы:

IIf(
    [BegTaxBasis]=0 And [Contribution]+[Distribution]=0,
    0,
    IIf(
        [BegTaxBasis]=0 And [TaxIncSubTotal]=0,
        -[Distribution],
        IIf(
            [Distribution]=0,
            0,
            IIf(
                [TBBLL]+[Recourse]+[QualifiedNonrecourse]+[NonRecourse]<[Distribution],
                -[Distribution],
                0
            )
        )
    )
) 

Затем я обновил его, см. Ниже:

IIf([BegTaxBasis]=0 And [Contribution]+[Distribution]=0,0,IIf([BegTaxBasis]=0 And [TaxIncSubTotal]=0,-[Distribution],IIf([Distribution]=0,0,IIf([TBBLL]>0,0,IIf([TBBLL]+[Recourse]+[QualifiedNonrecourse]+[NonRecourse]<[Distribution],-[Distribution],IIf([TBBLL]+[Recourse]+[QualifiedNonrecourse]+[NonRecourse]>[Distribution] And [TBBLL]+[Recourse]+[QualifiedNonrecourse]+[NonRecourse]<0 And [TaxIncSubTotal]<0,[TBBLL]+[Recourse]+[QualifiedNonrecourse]+[NonRecourse]-[TaxIncSubTotal],[TBBLL]+[Recourse]+[QualifiedNonrecourse]+[NonRecourse]))))) 

Подробная версия вышеперечисленного:

IIf(
    [BegTaxBasis]=0 And [Contribution]+[Distribution]=0,
    0,
    IIf(
        [BegTaxBasis]=0 And [TaxIncSubTotal]=0,
        -[Distribution],
        IIf(
            [Distribution]=0,
            0,
            IIf(
                [TBBLL]>0,
                0,
                IIf(
                    [TBBLL]+[Recourse]+[QualifiedNonrecourse]+[NonRecourse]<[Distribution],
                    -[Distribution],
                    IIf(
                        [TBBLL]+[Recourse]+[QualifiedNonrecourse]+[NonRecourse]>[Distribution] And [TBBLL]+[Recourse]+[QualifiedNonrecourse]+[NonRecourse]<0 And [TaxIncSubTotal]<0,
                        [TBBLL]+[Recourse]+[QualifiedNonrecourse]+[NonRecourse]-[TaxIncSubTotal],
                        [TBBLL]+[Recourse]+[QualifiedNonrecourse]+[NonRecourse]
                    )
                )
            )
        )
    )

И теперь запрос не будет выполняться, любая помощь очень ценится, спасибо!

0