Страница 1 из 1

ORA-01008: not all variables bound

Добавлено: 06 мар 2013, 11:58
Леонид
Здравствуйте, уважаемые разработчики!

Хочу поделиться с вами одной из редких, но как оказалось, иногда возникающих проблем.
Суть такова: в одном из отчётов при печати возникла (неизвестно после чего) ошибка (см. заголовок темы). Возникает вне зависимости от системы (XP/W7) и версий Oracle Client (ODP.Net) и StimulReport (на данный момент 2012.1.1300.0)
После нескольких часов разборов ( :twisted: ) и потыток понять, что вообще происходит, наконец-таки стало ясно, что дело не в версии Oracle client и даже не в версии StimulReport.

Чтобы решить эту проблему нужно удалить data source (полностью) и пересоздать её заново, создав так же необходимые параметры. (кто бы мог подумать :shock: )

В итоге, сравнив два файла отчёта (старый с проблемой, и новый - с пересозданной data source) выявили, что разница была в xml-теге <Type>StoredProcedure</Type>. Каким образом он "закрался" внутрь тега data source (в нашем случае это <qrMain>) остаётся загадкой.

Немного более подробный кусок кода:

Код: Выделить всё

    <DataSources isList="true" count="1">
      <qrMain Ref="3" type="Stimulsoft.Report.Dictionary.StiOracleODPSource" isKey="true">
...
        <NameInSource>OraConn</NameInSource>
        <Parameters isList="true" count="1">
          <value>DOC_CODE,,107,0</value>
        </Parameters>
        <SqlCommand>SELECT *
	FROM TABLE(vip_reports_pkg.rep_vip_voucher(:DOC_CODE))
    ORDER BY article_vip</SqlCommand>
        [b]<Type>StoredProcedure</Type>[/b] <----------- Here's the problem
      </qrMain>
Возможно, и скорее всего это исключительная ситуация. Тем не менее, если кто столкнётся с подобной проблемой, могут попробовать открыть отчёт текстовым редактором и поискать слово StoredProcedure, чтобы убедиться в том, что проблема не в этом.

P.S. В приложении прикреплён архив с двумя файлами: "Накладная ТОРГ-12 (Реал).mrt" (оригинальный файл - с ошибкой) и "Накладная ТОРГ-12 (Реал).mrt.new" - тот же файл (с пересозданной data source, т.е. исправленный).

Re: ORA-01008: not all variables bound

Добавлено: 06 мар 2013, 12:23
Aleksey
Здравствуйте,

У вас для источника данных qrMain установлено свойство Type в значение StoredProcedure.

Спасибо.

Re: ORA-01008: not all variables bound

Добавлено: 06 мар 2013, 12:34
Леонид
Чёрт!!!! :? Так просто?! :D

Сколько времени провозились и никто не заметил, а как поменяли тоже, видимо не заметили.
Прощу прощения, если внёс смуту.

Благодарю Вас за разъяснение!

Re: ORA-01008: not all variables bound

Добавлено: 06 мар 2013, 14:49
Aleksey
Здравствуйте,

Всегда рады помочь.