2014-10-09 2 views
0

Я студент, который является новым с OFBIZ и BIRT. Я пытаюсь изменить существующий отчет «Отчет о платежах», но я не могу получить какие-либо данные. и я думаю, что из-за этого я получаю ошибку,Редактирование отчета BIRT

The following items have errors: 

ReportDesign (id = 1): 
+ An exception occurred during processing. Please see the following message for  details: 
A BIRT exception occurred. See next exception for more information. 
Invalid javascript expression: measure["amount"] (Element ID:1) 
+ Can not find the prepared query o[email protected]a91e3d. (Element ID:1) 

это сценарий в OFBiz «открыт»:

payments = null; 
userLogin = null; 
parameters = null; 
try { 
    userLogin = delegator.findByPrimaryKey("UserLogin",UtilMisc.toMap("userLoginId","admin")); 
} catch(e) { 
     Debug.logError(e,""); 
} 
input = FastMap.newInstance(); 
inputFields = FastMap.newInstance(); 
if(params!=null){ 
    inputFields.put("partyIdTo", params["partyIdTo"]); 
    inputFields.put("paymentId", params["paymentId"]); 
    inputFields.put("paymentTypeId", params["paymentTypeId"]); 
    inputFields.put("paymentId_op", params["paymentId_op"]); 
    inputFields.put("paymentRefNum_ic", params["paymentRefNum_ic"]); 
    inputFields.put("noConditionFind", params["noConditionFind"]); 
    inputFields.put("partyIdFrom", params["partyIdFrom"]); 
    inputFields.put("paymentRefNum_op", params["paymentRefNum_op"]); 
    inputFields.put("amount", params["amount"]); 
    inputFields.put("statusId", params["statusId"]); 
    inputFields.put("paymentGatewayResponseId", params["paymentGatewayResponseId"]); 
    inputFields.put("paymentId_ic", params["paymentId_ic"]); 
    inputFields.put("paymentRefNum", params["paymentRefNum"]); 
    inputFields.put("comments_ic", params["comments_ic"]); 
    inputFields.put("comments_op", params["comments_op"]); 
    inputFields.put("comments", params["comments"]); 
} 
input.put("userLogin",userLogin); 
input.put("inputFields",inputFields); 
input.put("entityName","PaymentAndType"); 
input.put("orderBy","effectiveDate DESC"); 
//input.put("viewIndex", 0); 
//input.put("viewSize", 20); 
try { 
    result = dispatcher.runSync("performFind", input); 
    payments = result.get("listIt"); 
} catch (e) { 
    Debug.logError(e, module); 
} 

я модифицировал Entityengine.xml и получил котелок OFBiz схему в Oracle ,
, и я пытаюсь изменить файл сценария с изменениями, но после нескольких модификаций (ofbiz Источник данных не может быть изменен, у меня есть использование eclipse для редактирования .rptdesign файл), я получил эту ошибку.

(далее «Платежи Отчет» построен в: «Eclipse BIRT Designer Версия 2.5.1.v20090903» но я использую: «Eclipse BIRT Designer версии 4.3.1.v201309091055» так Когда сохранить и запустить это, я получаю ошибка)

org.eclipse.birt.report.engine.api.EngineException: The design file <stream> has error and can not be run. 

как я нашел, это происходит, когда версия несовместима, Так как я могу изменить этот файл и получить данные? , что я делаю неправильно? спасибо и извините за плохой английский и отсутствие информации.

ответ

0

В BIRT Designer попробуйте внести простые изменения в файл rptdesign (например, обновить описание), а затем сохранить его (и не запускать одновременно). Это должно обновить файл до последней версии BIRT Designer. Затем попробуйте запустить его снова, чтобы проверить, не исчез ли EngineException.

+0

Hi @ user3660637 - yap Я старался медленно модифицировать его обеими версиями до нескольких модификаций. но после того, как несколько файлов конфигурации будут там, и я получаю ошибку 'org.eclipse.birt.report.engine.api.EngineException: файл проекта имеет ошибку и не может быть запущен.'. так что все советы? и извините за поздний повтор. – Archangle

0

BIRT совместим с обратной связью, поэтому отчеты о ранних версиях (2.5) будут работать в новых версиях (4.3) BIRT. Я вижу, что вы говорите, что вы уже пытались сохранить отчет, но отчет по-прежнему отображается как версия 2.5, что означает, что он не сохраняет ваши изменения. Если отчет обновляется, он обновляется до новой версии (4.3), с которой вы строите.

Скорее всего, в существующем отчете есть ошибка, которая была проигнорирована 2.5, но не будет работать в 4.3.

Простейшим решением (и лучше всего для вашего образования) является пересоздание отчета в 4.3 с нуля. Проверяйте его, когда вы строите, чтобы убедиться, что он работает в простейшей форме. По мере того как вы будете строить, вы либо найдете, либо исправите дефект дизайна, который разрешен в 2.5 OR, когда вы строите с 4.3, вы вообще не создадите ошибку/ошибку.

+0

Привет, james- действительно спасибо за вход. Я попробовал обе версии. если я перестрою его с 4.3, я получаю 'org.eclipse.birt.report.engine.api.EngineException: файл проекта имеет ошибку и не может быть запущен.' – Archangle

+0

Привет, @James - действительно спасибо за ввод. попробуйте обе версии. if i rebuild it with 4.3 i get 'org.eclipse.birt.report.engine.api.EngineException: файл проекта имеет ошибку и не может быть запущен.' и если я его построю с 2.5, я получаю ошибку classdif с драйверами (birt EngineException). – Archangle

+0

@Archangle С вашего комментария в ответе звучит так, будто вы строите ошибку. Не уверен, что кто-то здесь сможет помочь вам с вашей проблемой. –

Смежные вопросы