Форум OlegON > Программы и оборудование для автоматизации торговли > Системы автоматизации торговли > Супермаг Плюс (Супермаг 2000)

Ценник с учётом предела скидки и маркетинговой акции. : Супермаг Плюс (Супермаг 2000)

27.04.2024 1:24


14.11.2014 16:53
SMak
 
Теперь другая проблема :(
На базах с 10м ораклом всё ок, а с 11м :
Код:
2014.11.14 (Friday) 16:46:13
----- Прерывание работы программы -----
сообщение: "An exception occurred during the operation, making the result invalid.  Check InnerException for exception details."
исключение: System.Reflection.TargetInvocationException
источник: System
метод: Void RaiseExceptionIfNecessary()
   at System.ComponentModel.AsyncCompletedEventArgs.RaiseExceptionIfNecessary()
   at Sm.Core.RunWorkerCompletedEventArgs`1.get_Result()
   at Sm.FastReports.Domain.FastReportDomainPanel.<>c__DisplayClass2.<RunSingleReport>b__0(Object sender, RunWorkerCompletedEventArgs`1 e)
----- Причина исключения, уровень вложения 1 -----
сообщение: "ORA-00904: : недопустимый идентификатор
"
исключение: System.Data.OracleClient.OracleException
источник: Sm.BusinessServer
данные:   соединено с: База даных=db11; Пользователь=xxx
   текст команды: select t.Article,t.Name,t.Country,t.Price,t.UnitName,t.QtyPrint,t.BarCode,t.RUBNAME, decode(t.PLU,null,'','PLU:  '||t.PLU) PLU, ROUND(t.PRICE*((100-NVL(Supermag.SMGETDISCLIMITCARD(t.ARTICLE, :P_PRICE_TYPE), 100))/100), 2) MIN_PRICE
  from supermag.SVPriceCard t
order by 1
   тип команды: Text
   параметры: P_PRICE_TYPE=«2»
метод: Boolean ReadBuffer(System.Collections.ObjectModel.ReadOnlyCollection`1[TRecord] ByRef)
   at Sm.BusinessServer.BackgroundReaderBase`1.ReadBuffer(ReadOnlyCollection`1& result)
   at Sm.FastReports.Server.FastReportBO.Sm.FastReports.Link.IFastReportBO.FillTableDataNext(BusinessOperation businessOperation, ReadOnlyCollection`1& dataTable)
   at Sm.FastReports.SupermagFastReportConnection.<>c__DisplayClass8.<FillTableData>b__5(IFastReportBO bo)
   at Sm.BusinessServer.LocalServer.LocalClient`1.Do(Action`1 action)
   at Sm.FastReports.SupermagFastReportConnection.TransactedBusinessObject.Do(Action`1 action)
   at Sm.FastReports.SupermagFastReportConnection.FillTableData(DataTable table, String selectCommand, CommandParameterCollection parameters)
   at FastReport.Data.DataConnectionBase.FillTable(TableDataSource source)
   at FastReport.Data.TableDataSource.LoadData(ArrayList rows)
   at FastReport.Data.DataSourceBase.Init(Relation relation, String filter, SortCollection sort, Boolean useAllParentRows)
   at FastReport.Data.DataSourceBase.get_Item(Column column)
   at FastReport.Data.Column.get_Value()
   at FastReport.Report.GetColumnValue(String complexName, Boolean convertNull)
   at FastReport.Report.GetColumnValue(String complexName)
   at FastReport.ReportScript._StartReport(Object sender, EventArgs e)
почему так?
Вложения
Тип файла: rar ab_price_card_m.rar (2.9 Кб, 134 просмотров)
14.11.2014 18:18
OlegON
 
Код:
select t.Article,t.Name,t.Country,t.Price,t.UnitName,t.QtyPrint,t.BarCode,t.RUBNAME, decode(t.PLU,null,'','PLU:  '||t.PLU) PLU, ROUND(t.PRICE*((100-NVL(Supermag.SMGETDISCLIMITCARD(t.ARTICLE, 2), 100))/100), 2) MIN_PRICE
from supermag.SVPriceCard t
order by 1
что выдает на 11g?
17.11.2014 15:53
SMak
 
https://yadi.sk/i/AEZ17Z7Scm4Ur
17.11.2014 16:36
vdm
 
Попробуй выбросить SMGETDISCLIMITCARD() из запроса. М.б. там у простых юзеров нет прав на эту функцию.
17.11.2014 16:42
Mtirt
 
Стоп. Весь сыр-бор из-за этой функции. Надо наоборот, права дать:
Код:
grant execute on SMGETDISCLIMITCARD to SUPERMAG_FN_PRICECARD_PRINT;
17.11.2014 16:52
vdm
 
Можно права дать.
Можно обойтись без функции и поле сделать вычисляемым (или как оно там в фастрепорте) со своим запросом - будет несколько более универсально.
17.11.2014 16:53
Mtirt
 
А что, при использовании функции в своем запросе в FastReport-е не надо права на использование давать?
17.11.2014 17:08
vdm
 
У меня речь про "избавиться от функции". Вынести ее из базы в свой отчет.
Дело то хозяйское. Проще пройтись грантом по всем базам - на здоровье.
17.11.2014 17:10
SMak
 
дал право
всё то же самое, ценник не печатает :/

от простого пользователя, да: https://yadi.sk/i/keVxHXRycmAap
17.11.2014 17:27
SMak
 
Код:
grant execute on SMGETDISCLIMITCARD to SUPERMAG_MODULE_CARDS;
?
Часовой пояс GMT +3, время: 01:24.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.