/** * * @param bAddNewHeaderOnAdd */ public void setAddNewHeaderOnAdd(boolean bAddNewHeaderOnAdd) { m_bAddNewHeaderOnAdd = bAddNewHeaderOnAdd; if (m_bAddNewHeaderOnAdd) if (this.getMainRecord() != null) this.getMainRecord().setOpenMode((this.getMainRecord().getOpenMode() | DBConstants.OPEN_REFRESH_AND_LOCK_ON_CHANGE_STRATEGY)); } /**
if (this.getMainRecord() != null) iErrorCode = this.getMainRecord().handleRecordChange(this.getMainFileKeyField(false), DBConstants.FIELD_CHANGED_TYPE, bDisplayOption); // Tell the main file that I changed (so it can lock/whatever) break; case DBConstants.ADD_TYPE: boolean bOldSelect = this.enableReselect(false); if (this.getMainRecord() != null) if (this.getMainRecord().getEditMode() == DBConstants.EDIT_ADD) m_bMainRecordChanged = true; iErrorCode = this.getMainRecord().handleRecordChange(this.getMainFileKeyField(false), DBConstants.FIELD_CHANGED_TYPE, bDisplayOption); // Tell the main file that I changed (so it can lock/whatever)
if (this.getMainRecord() != null) iErrorCode = this.getMainRecord().handleRecordChange(this.getMainFileKeyField(false), DBConstants.FIELD_CHANGED_TYPE, bDisplayOption); // Tell the main file that I changed (so it can lock/whatever) break; case DBConstants.ADD_TYPE: boolean bOldSelect = this.enableReselect(false); if (this.getMainRecord() != null) if (this.getMainRecord().getEditMode() == DBConstants.EDIT_ADD) m_bMainRecordChanged = true; iErrorCode = this.getMainRecord().handleRecordChange(this.getMainFileKeyField(false), DBConstants.FIELD_CHANGED_TYPE, bDisplayOption); // Tell the main file that I changed (so it can lock/whatever)
if (this.getMainRecord() != null) iErrorCode = this.getMainRecord().handleRecordChange(this.getMainFileKeyField(false), DBConstants.FIELD_CHANGED_TYPE, bDisplayOption); // Tell the main file that I changed (so it can lock/whatever) break; case DBConstants.ADD_TYPE: boolean bOldSelect = this.enableReselect(false); if (this.getMainRecord() != null) if (this.getMainRecord().getEditMode() == DBConstants.EDIT_ADD) m_bMainRecordChanged = true; iErrorCode = this.getMainRecord().handleRecordChange(this.getMainFileKeyField(false), DBConstants.FIELD_CHANGED_TYPE, bDisplayOption); // Tell the main file that I changed (so it can lock/whatever)
boolean state = true; if (listener != null) if (listener.getMainRecord().getTable().getCurrentTable() != listener.getMainRecord().getTable()) state = listener.setEnabledListener(false); // This handles a very obscure case: if this is a sub of a record in another table, can't lock main int iErrorCode = DBConstants.NORMAL_RETURN;
boolean state = true; if (listener != null) if (listener.getMainRecord().getTable().getCurrentTable() != listener.getMainRecord().getTable()) state = listener.setEnabledListener(false); // This handles a very obscure case: if this is a sub of a record in another table, can't lock main int iErrorCode = DBConstants.NORMAL_RETURN;
boolean state = true; if (listener != null) if (listener.getMainRecord().getTable().getCurrentTable() != listener.getMainRecord().getTable()) state = listener.setEnabledListener(false); // This handles a very obscure case: if this is a sub of a record in another table, can't lock main int iErrorCode = DBConstants.NORMAL_RETURN;
/** * Add the A/R trx entry for the total invoice amount. */ public void addInvoiceEntry() { ArTrx recArTrx = (ArTrx)this.getOwner(); Calendar calTrxDate = ((DateTimeField)this.getOwner().getField(ArTrx.TRX_DATE)).getCalendar(); if (calTrxDate != null) calTrxDate.add(Calendar.MINUTE, -1); // Just so it will come before the previous entry boolean bOldState = this.setEnabledListener(true); // This method IS disabled, but must be enabled if I update this record (so count is correct) try { SubFileFilter filter = (SubFileFilter)this.getOwner().getListener(SubFileFilter.class); BookingModel recBooking = (BookingModel)filter.getMainRecord(); recBooking.addArDetail(recArTrx, null, false); // Being careful recArTrx.addNew(); double dBalance = recBooking.getField(BookingModel.NET).getValue(); recArTrx.getField(ArTrx.AMOUNT).setValue(dBalance); ((DateTimeField)recArTrx.getField(ArTrx.TRX_DATE)).setCalendar(calTrxDate, DBConstants.DISPLAY, DBConstants.SCREEN_MOVE); // Just before the previous entry. recArTrx.getField(ArTrx.TRX_STATUS_ID).setValue(iInvoiceTrxStatus); recArTrx.getField(ArTrx.COMMENTS).moveFieldToThis(((ReferenceField)recArTrx.getField(ArTrx.TRX_STATUS_ID)).getReference().getField(TrxStatus.STATUS_DESC)); recArTrx.add(); } catch (DBException ex) { ex.printStackTrace(); } finally { this.setEnabledListener(bOldState); } }
/** * Add the A/R trx entry for the total invoice amount. */ public void addInvoiceEntry() { ArTrx recArTrx = (ArTrx)this.getOwner(); Calendar calTrxDate = ((DateTimeField)this.getOwner().getField(ArTrx.TRX_DATE)).getCalendar(); if (calTrxDate != null) calTrxDate.add(Calendar.MINUTE, -1); // Just so it will come before the previous entry boolean bOldState = this.setEnabledListener(true); // This method IS disabled, but must be enabled if I update this record (so count is correct) try { SubFileFilter filter = (SubFileFilter)this.getOwner().getListener(SubFileFilter.class); BookingModel recBooking = (BookingModel)filter.getMainRecord(); recBooking.addArDetail(recArTrx, null, false); // Being careful recArTrx.addNew(); double dBalance = recBooking.getField(BookingModel.NET).getValue(); recArTrx.getField(ArTrx.AMOUNT).setValue(dBalance); ((DateTimeField)recArTrx.getField(ArTrx.TRX_DATE)).setCalendar(calTrxDate, DBConstants.DISPLAY, DBConstants.SCREEN_MOVE); // Just before the previous entry. recArTrx.getField(ArTrx.TRX_STATUS_ID).setValue(iInvoiceTrxStatus); recArTrx.getField(ArTrx.COMMENTS).moveFieldToThis(((ReferenceField)recArTrx.getField(ArTrx.TRX_STATUS_ID)).getReference().getField(TrxStatus.STATUS_DESC)); recArTrx.add(); } catch (DBException ex) { ex.printStackTrace(); } finally { this.setEnabledListener(bOldState); } }