private ConversionRateDoc insertConversionRateDocument(FIN_FinaccTransaction transaction) { OBContext.setAdminMode(); try { ConversionRateDoc newConversionRateDoc = OBProvider.getInstance().get(ConversionRateDoc.class); newConversionRateDoc.setOrganization(transaction.getOrganization()); newConversionRateDoc.setCurrency(transaction.getForeignCurrency()); newConversionRateDoc.setToCurrency(transaction.getCurrency()); newConversionRateDoc.setRate(transaction.getForeignConversionRate()); newConversionRateDoc.setForeignAmount(transaction.getForeignAmount()); newConversionRateDoc.setFinancialAccountTransaction( OBDal.getInstance().get(APRM_FinaccTransactionV.class, transaction.getId())); OBDal.getInstance().save(newConversionRateDoc); OBDal.getInstance().flush(); return newConversionRateDoc; } finally { OBContext.restorePreviousMode(); } }