09.09.2016, 04:32 | #1 |
Участник
|
Обработка счетчика в js
Добрый день.
CRM 2011. Имеется сущность "Претензия входящая". Её номер присваивается автоматически из счетчика Counter при создании записи, где он и изменяется во время создания записи. Появилась необходимость отправлять претензии на дорассмотрение и, при этом, требуется не изменять счетчик. Поле номера было убрано из формы и был создан его дубликат, который заполняется в момент создания записи, но имеет текстовый формат, и поле должно заполняться как "номер_старой_претензии/номер_дорассмотрения" (266/1, 266/2 и т.д.) и при этом общая нумерация должна сохраняться, т.е. счетчик нужно в этот момент неувеличивать. Но так как нет доступа к исходникам счетчика, то нужен костыль, в котором я бы просто уменьшал в этот момент значение счетчика на 1. Достаю я нужную мне запись счетчика следующим способом: Код: var queryCounter = "<fetch version='1.0' output-format='xml-platform' mapping='logical'>" + "<entity name='xbitz_counter'>" + "<attribute name='xbitz_counterid'/>" + "<attribute name='xbitz_currentposition'/>" + "<filter type='and'>" + "<condition attribute='xbitz_counterid' operator='eq' uitype='xbitz_counter' value='019EA2FF-8AD9-E211-AC73-00155D144B42' />" +//ID счетчика по входящим претензиям "</filter>" + "</entity>" + "</fetch>"; var retriveCounter = CrmServiceToolkit.Fetch(queryCounter); Код: retriveCounter[0].getValue("xbitz_currentposition"); |
|
09.09.2016, 10:11 | #2 |
Moderator
|
Вообще то что вы делаете - не правильно. И да, вам нужен другой инструмент. Fetch только для чтения данных. У вас, очевидно, старый инструмент, который остался от CRM 4.0. Почитайте про CRM 2011 oData service. Теперь есть более простые способы как вычитать, так и обновить данные.
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. MS Certified Dirty Magic Professional |
|
|
|