AXForum  
Вернуться   AXForum > Прочие обсуждения > Курилка
CRM
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 11.06.2019, 10:11   #381  
Raven Melancholic is offline
Raven Melancholic
Участник
Аватар для Raven Melancholic
Самостоятельные клиенты AX
Лучший по профессии 2015
 
1,800 / 969 (36) +++++++
Регистрация: 21.03.2005
Адрес: Москва-Петушки
Цитата:
Сообщение от axm2017 Посмотреть сообщение
"а полякам запиши дату дважды, чтобы уж точно дошло"
Не только им, для русских в одном случае дважды, а в другом ни разу (нечего баловать). DAX2012, метод priceDate таблицы salesLine.
В начале метода:
X++:
    // <GEERU>
    #ISOCountryRegionCodes

    if (this.PriceAgreementDate_RU &&
        SysCountryRegionCode::isLegalEntityInCountryRegion([ #isoRU ]))
    {
        return this.PriceAgreementDate_RU;
    }
    // <GEERU>
потом получение другими условиями, ну а в конце, чтобы не забыть:
X++:
    // <GEERU>
    if (SysCountryRegionCode::isLegalEntityInCountryRegion([#isoRU]) && this.PriceAgreementDate_RU)
    {
        priceDate = this.PriceAgreementDate_RU;
    }
    // </GEERU>
Ну а в одноименном метода salesQuotationLine ни одного раза.
За это сообщение автора поблагодарили: Logger (1).
Старый 11.06.2019, 11:12   #382  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,216 / 2111 (77) +++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Цитата:
Сообщение от fed Посмотреть сообщение
Сломали то ли систему кэширования, то ли систему записи в БД. Воспроизводить пока не пытались - времени не было.
P.S. Добавлю что это был Productive Instance, поэтому простые домашние средства типа рестарта IIS были не доступны. Оставалось либо ждать часиков 8, либо бороться с поддержкой (вероятно - более 8 часов).
А не пробовали поюзать сброс кешей ?
Могли остаться средства для этого в x++ (надеюсь они не все там выпилили). Повесить это на кнопку и дать людям поюзать.
Старый 11.06.2019, 11:42   #383  
fed is offline
fed
Moderator
Аватар для fed
Ex AND Project
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
2,503 / 4772 (165) ++++++++++
Регистрация: 13.03.2002
Адрес: Hüfingen,DE
Цитата:
Сообщение от Logger Посмотреть сообщение
А не пробовали поюзать сброс кешей ?
Могли остаться средства для этого в x++ (надеюсь они не все там выпилили). Повесить это на кнопку и дать людям поюзать.
Не - не пробовали. Я как-то забыл про существование classRunner.
Старый 18.06.2019, 14:31   #384  
Stitch_MS is offline
Stitch_MS
Участник
Аватар для Stitch_MS
Соотечественники
 
299 / 288 (10) ++++++
Регистрация: 27.02.2006
Адрес: Дания
Майкрософт в своём репертуаре, делает всё, чтобы простые люди тратили время попусту. Почему не сократить название продукта в названии сессии, чтобы сразу было видно, о чем ролик?

Старый 18.06.2019, 14:38   #385  
trud is offline
trud
Участник
Лучший по профессии 2017
 
769 / 998 (35) +++++++
Регистрация: 07.06.2003
Записей в блоге: 1
Цитата:
Сообщение от Stitch_MS Посмотреть сообщение
Почему не сократить название продукта в названии сессии, чтобы сразу было видно, о чем ролик?
Это наверное специально, чтобы можно было сделать PowerApps который бы читал страницу и предствлял список в более удобном формате
За это сообщение автора поблагодарили: Stitch_MS (1).
Старый 18.06.2019, 14:44   #386  
Stitch_MS is offline
Stitch_MS
Участник
Аватар для Stitch_MS
Соотечественники
 
299 / 288 (10) ++++++
Регистрация: 27.02.2006
Адрес: Дания
Цитата:
Сообщение от trud Посмотреть сообщение
Это наверное специально, чтобы можно было сделать PowerApps который бы читал страницу и предствлял список в более удобном формате
Ага, и сам бы смотрел.
Старый 02.07.2019, 16:00   #387  
axm2017 is offline
axm2017
Участник
 
60 / 53 (2) ++++
Регистрация: 15.05.2017
Смотрю очередной SSRS отчет PSAManageInvoice

порадовало что на каждой строке отчета вызывается (в классе дата провайдера)

X++:
protected void initPSAManageInvoiceTmp(TableId _tableID)
    {
        Notes lineNotes;
        ProjTable projTable;
        ProjInvoiceEmplDetail projInvoiceEmplDetail;
        ProjInvoiceCostDetail projInvoiceCostDetail;
        ProjInvoiceItemDetail projInvoiceItemDetail;
        ProjInvoiceRevenueDetail projInvoiceRevenueDetail;
        ProjInvoiceOnAccDetail projInvoiceOnAccDetail;
        ProjInvoiceRevenue projInvoiceRev;

        ProjProposalJour projProposalJour = ProjProposalJour::find(projInvoiceJour.ProposalId);
        tmpPSAManageInvoice.clear();

        if (printDocuLine && docuRef != null)
        {
            lineNotes = Docu::concatDocuRefNotes(docuRef);
        }

        tmpPSAManageInvoice.CompanyPhone                = companyInfo.phone();
        tmpPSAManageInvoice.CompanyTelefax              = companyInfo.teleFax();
        tmpPSAManageInvoice.CompanyGiro                 = companyInfo.Giro;
        tmpPSAManageInvoice.CompanyCoRegNum             = companyInfo.CoRegNum;
        tmpPSAManageInvoice.CompanyDebitDirectId        = BankAccountTable::findByCompany(companyInfo.DataArea, companyInfo.Bank).DebitDirectId;
        tmpPSAManageInvoice.DeliveryName                = companyInfo.Name;
        tmpPSAManageInvoice.DeliveryAddress             = companyInfo.postalAddress().Address;
        tmpPSAManageInvoice.InvoiceNum                  = projInvoiceJour.ProjInvoiceId;
        tmpPSAManageInvoice.InvoiceDate                 = projInvoiceJour.InvoiceDate;
        tmpPSAManageInvoice.DueDate                     = projInvoiceJour.DueDate;
        tmpPSAManageInvoice.CustAccountExt              = projInvoiceJour.InvoiceAccount;
        tmpPSAManageInvoice.CustCompanyName             = projInvoiceJour.DeliveryName;
        tmpPSAManageInvoice.CustCompanyAddress          = custTable.address();
        tmpPSAManageInvoice.CustCompanyPhone            = custTable.phone();
        tmpPSAManageInvoice.CustCompanyTelefax          = custTable.telefax();
        tmpPSAManageInvoice.PaymTermId                  = custTable.PaymTermId;
        tmpPSAManageInvoice.ContractId                  = projInvoiceJour.ProjInvoiceProjId;
        tmpPSAManageInvoice.OurAccountNum               = projInvoiceJour.ourAccountNum();
        tmpPSAManageInvoice.CurrencyCode                = projInvoiceJour.CurrencyId;
        tmpPSAManageInvoice.CompanyLogo                 = FormLetter::companyLogo();
        tmpPSAManageInvoice.TotalDisc                   = projInvoiceJour.EndDisc;
        tmpPSAManageInvoice.LineTxt                     = projInvoiceDetailLine.Txt;
Нормализация, скорость работы? Не не слышал.
Старый 05.07.2019, 10:59   #388  
axm2017 is offline
axm2017
Участник
 
60 / 53 (2) ++++
Регистрация: 15.05.2017
Табличка AssetTrans
метод updateDocument_W
собратья по разуму из Восточной Европы оторвались с данным методом.

По виду данный метод используется чуть ли не исключительно при печати отчетов.
Менять данные в табличке Trans при печати? Риски блокировок и все все все?
И так сойдет.
Старый 09.08.2019, 08:57   #389  
axm2017 is offline
axm2017
Участник
 
60 / 53 (2) ++++
Регистрация: 15.05.2017
Опять разбираюсь с SSRS
класс VendInvoiceDocumentDP
X++:
 protected void enableProductDimensionColumns(VendInvoiceDocumentTmp _vendInvoiceDocumentTmp, FieldId _inventDimFieldId)
    {
        #InventDimDevelop
        switch (_inventDimFieldId)
        {
            case fieldNum(InventDim, InventSizeId):
                _vendInvoiceDocumentTmp.ShowInventDimSize = 1;
                break;
            case fieldNum(InventDim, InventColorId):
                _vendInvoiceDocumentTmp.ShowInventDimColor = 1;
                break;
            case fieldNum(InventDim, ConfigId):
                _vendInvoiceDocumentTmp.ShowInventDimConfigId = 1;
                break;
            case fieldNum(InventDim, InventStyleId):
                _vendInvoiceDocumentTmp.ShowInventDimStyleId = 1;
                break;
        }
    }
Судя по всему поля Show..имеют смысл крыжика но реализованы так забавно.

ЗЫ чем больше разбираю SSRS тем больше осознаю что "место проклято" проще снести и писать заново. Рукожопы разных стран и цвета кожи херачили каждый во что горазд в одни таблички крыжики только по одним им ведомым законам и правилам надиктованных видимо чем то тяжелым.

Последний раз редактировалось axm2017; 09.08.2019 в 09:05.
Старый 30.08.2019, 09:10   #390  
dech is offline
dech
Участник
Аватар для dech
Самостоятельные клиенты AX
 
531 / 245 (10) ++++++
Регистрация: 25.06.2009
Адрес: Омск
Записей в блоге: 3
Цитата:
Сообщение от axm2017 Посмотреть сообщение
Опять разбираюсь с SSRS
класс VendInvoiceDocumentDP
Там полно таких перлов. Вот еще пример похлеще:
X++:
private boolean printTaxTrans()
{
    if (taxInvoiceItemType == ItemType::Item)
    {
        return TaxTable::find(taxSpec.taxCode()).UnrealizedTax == NoYes::No;
    }
    else
    {
        return TaxTable::find(taxSpec.taxCode()).UnrealizedTax == NoYes::Yes;
    }
}
А здесь название говорит, что нужно что-то вернуть, однако...
X++:
private void inventDimLine()
{
    insertInventDim = true;
}
__________________
Незаменимых людей нет. Но и в отпуск мы тебя не отпустим. © Начальник

Последний раз редактировалось dech; 30.08.2019 в 09:13.
Старый 30.08.2019, 09:28   #391  
George Nordic is offline
George Nordic
Модератор
Аватар для George Nordic
Злыдни
 
4,425 / 1077 (44) ++++++++
Регистрация: 17.12.2003
Адрес: Moscow
Записей в блоге: 9
Цитата:
Сообщение от dech Посмотреть сообщение
А здесь название говорит, что нужно что-то вернуть, однако...
[XPP]private void inventDimLine()
Что должен вернуть void???
Старый 30.08.2019, 11:06   #392  
dech is offline
dech
Участник
Аватар для dech
Самостоятельные клиенты AX
 
531 / 245 (10) ++++++
Регистрация: 25.06.2009
Адрес: Омск
Записей в блоге: 3
Цитата:
Сообщение от George Nordic Посмотреть сообщение
Что должен вернуть void???
Я не про тип, а про название. В названии должен быть хотя бы префикс set, иначе метод выглядит как возвращающий нечто (в данном случае похожее на запись InventDim).
Второе, зачем в private-метод пихать единственную операцию присваивания? В контексте вызов подобного метода только дизориентирует. Другое дело, если бы метод вызывался наследниками, хотя все равно над названием надо было лучше думать.
Еще нарыл в VendInvoiceDocument.main() 2 условия по Voucher
X++:
            select firstOnly TableId, RecId from taxEngineLedgerJournalTransHeader
                join RecId from ledgerJournalTransLoc
                    where ledgerJournalTransLoc.AccountType    == LedgerJournalACType::Vend
                        && ledgerJournalTransLoc.JournalNum    == taxEngineLedgerJournalTransHeader.JournalNum
                        && ledgerJournalTransLoc.Voucher       == taxEngineLedgerJournalTransHeader.Voucher
                        && ledgerJournalTransLoc.Invoice       == vendInvoiceJournal.InvoiceId
                        && ledgerJournalTransLoc.Voucher       == vendInvoiceJournal.LedgerVoucher;
Кроме того, TableId не нужно указывать в списке полей селекта.
__________________
Незаменимых людей нет. Но и в отпуск мы тебя не отпустим. © Начальник

Последний раз редактировалось dech; 30.08.2019 в 11:10.
Теги
axapta, cil, rasset, баг

 

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 09:38.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.