Тема: like - unlike?
Показать сообщение отдельно
Старый 20.03.2007, 10:24   #3  
Tiruvileijadal' is offline
Tiruvileijadal'
Участник
Аватар для Tiruvileijadal'
 
92 / 10 (1) +
Регистрация: 15.03.2007
Адрес: Сургут
неа, не помогло...
это выбор сумм сальдо (т.е. корр.счет like "Z01*".
X++:
    // поле "Задолж. на начало периода, осн.сумма"
    select * from ledgerVendTrans_2
                 where ledgerVendTrans_2.Postav == ledgerVendTrans_1.Postav
                    && ledgerVendTrans_2.AccountCorr like 'Z01*'
                join parCredDebt
                 where parCredDebt.BuhSchet == ledgerVendTrans_1.Account
                    && parCredDebt.CentrZatrat == ledgerVendTrans_2.dimensions[2]
                    && parCredDebt.SummType == SummType::Osnovn;
     tempTable.ZadolgFr = ledgerVendTrans_2.Amount;
я не сильна в бухгалтерии и не знаю, существуют ли разновидности этого счета, т.е. кроме Z01.00.00 есть ли еще Z01.01.00 или что-то в этом духе, поэтому делаю не знак "==", а like.
Но теперь мне нужно посчитать суммы, которые не попадают на этот кор.счет, т.е. поле ledgerVendTrans_2.AccountCorr должно быть unlike 'Z01*'. Сделала, как посоветовали (точнее как я этот совет поняла):
X++:
    // поле "Получен.кредиты, займы"
    while select * from ledgerVendTrans_2
                 where ledgerVendTrans_2.Postav == ledgerVendTrans_1.Postav
                    && !(ledgerVendTrans_2.AccountCorr like 'Z01*')
                    && ((ledgerVendTrans_2.Amount < 0 && ledgerVendTrans_2.Correct == 0)
                       || (ledgerVendTrans_2.Amount > 0 && ledgerVendTrans_2.Correct == 1))
                join parCredDebt
                 where parCredDebt.BuhSchet == ledgerVendTrans_1.Account
                    && parCredDebt.CentrZatrat == ledgerVendTrans_2.dimensions[2]
                    && parCredDebt.SummType == SummType::Osnovn
     {
         tempTable.Credit = tempTable.Credit + ledgerVendTrans_2.Amount;
     }
результат: tempTable.Credit = 0.
Но если задать конкретно условие != 'Z01.00.00', то все считает.