Я использовал учебник и Java SDK
для вывода отчетов из нового REST reporting API
.
https://developer.intuit.com/docs/0025_quickbooksapi/0055_devkits/0201_ipp_java_devkit_3.0/reports
Я использовал следующий код, как указано в учебнике:
String consumerKey = "XXXXXXXXXXXTDF2GEP0tlzdGxxpQRfSb4";
String consumerSecret = "XXXXXXXXXXYuy9CLaWiyAVHTowK0NuGMKN1X";
String accessToken = "XXXXXXXXXXXGPU4SUGAaeyhRJFp05NUg4s8QnbY4eI4U";
String accessTokenSecret = "XXXXXXXXXXXgkz50A8Ho3Z3pgMO8QFh2ZBv3XjI";
OAuthAuthorizer oauth = new OAuthAuthorizer(consumerKey, consumerSecret, accessToken, accessTokenSecret);
String appToken = "011e510ebf68ab4683b8a06b21f6228dfa03";
String companyID = "1067363490";
try {
Context context = new Context(oauth, appToken, ServiceType.QBO, companyID);
ReportService service = new ReportService(context);
service.setStart_date("2014-02-01");
service.setEnd_date("2014-04-20");
service.setAccounting_method("Accrual");
Object report = service.executeReport(ReportName.PROFITANDLOSS.toString());
String name = "ryan";
//System.out.println(report.toString());
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Внутри service.executeReport
он продолжает бросать java.lang.ClassCastException
: com.intuit.ipp.data.Report
не может быть com.intuit.ipp.core.Response
Кто-нибудь получил эти отчеты для работы с Java SDK
? Я делаю что-то неправильно?
В настоящее время отчеты поддерживают только Json. Убедитесь, что вы указываете: Config.setProperty(Config.SERIALIZATION_RESPONSE_FORMAT, "json");
Линия обновления:
Object report = service.executeReport(ReportName.PROFITANDLOSS.toString());
Для того, чтобы:
Report report = service.executeReport(ReportName.PROFITANDLOSS.toString());
Как показано здесь: https://developer.intuit.com/docs/0100_accounting/0500_developer_kits/0201_ipp_java_devkit_3.0/reports