Agregar una nota a los movimientos de caja Openbravo POS
Esta funcionalidad
permite a los usuarios agregar una nota a los movimientos de caja en Openbravo
POS.
El resultado debe
quedar así:
Paso 1. – Agregar una columna llamada “NOTES” en la tabla “PAYMENTS” de tipo
varchar 255 que pueda aceptar NULLS.
Este sería el
codigo:
ALTER TABLE
`abastos`.`payments`
ADD COLUMN `NOTES` VARCHAR(255) NULL DEFAULT NULL AFTER `RETURNMSG`;
ADD COLUMN `NOTES` VARCHAR(255) NULL DEFAULT NULL AFTER `RETURNMSG`;
Paso 2.- En la clase DataLogicSales.java
agrega el siguiente código.
Datas.STRING
Al final de:
paymenttabledatas = new Datas[] {}
Quedando:
paymenttabledatas = new Datas[] {Datas.STRING, Datas.STRING,
Datas.TIMESTAMP, Datas.STRING, Datas.STRING, Datas.DOUBLE,Datas.STRING};
Además habrá que
modificar el método getPaymentMovementInsert()
public final SentenceExec getPaymentMovementInsert() {
return new SentenceExecTransaction(s) {
public int execInTransaction(Object params) throws BasicException {
new PreparedSentence(s
, “INSERT INTO RECEIPTS (ID, MONEY, DATENEW) VALUES (?, ?, ?)”
, new SerializerWriteBasicExt(paymenttabledatas, new int[] {0, 1, 2})).exec(params);
return new PreparedSentence(s
// LINES MODIFIED
, “INSERT INTO PAYMENTS (ID, RECEIPT, PAYMENT, TOTAL, NOTES) VALUES (?, ?, ?, ?, ?)”
, new SerializerWriteBasicExt(paymenttabledatas, new int[] {3, 0, 4, 5, 6})).exec(params);
}
};
}
return new SentenceExecTransaction(s) {
public int execInTransaction(Object params) throws BasicException {
new PreparedSentence(s
, “INSERT INTO RECEIPTS (ID, MONEY, DATENEW) VALUES (?, ?, ?)”
, new SerializerWriteBasicExt(paymenttabledatas, new int[] {0, 1, 2})).exec(params);
return new PreparedSentence(s
// LINES MODIFIED
, “INSERT INTO PAYMENTS (ID, RECEIPT, PAYMENT, TOTAL, NOTES) VALUES (?, ?, ?, ?, ?)”
, new SerializerWriteBasicExt(paymenttabledatas, new int[] {3, 0, 4, 5, 6})).exec(params);
}
};
}
Descarga el codigo del punto 3 PaymentsEditor
Paso 3.– En la clase PaymentsEditor.java en vista de diseño (com.openbravo.pos.panels) crea un JTextField llamado JNotes.
Paso 3.– En la clase PaymentsEditor.java en vista de diseño (com.openbravo.pos.panels) crea un JTextField llamado JNotes.
Paso 4.- Cambia a la vista de código y agrega lo siguiente:
private String m_sNotes;
Paso 5.- En el método writeValueEOF()
m_sNotes = null;
jNotes.setEnabled(false);
private String m_sNotes;
Paso 5.- En el método writeValueEOF()
m_sNotes = null;
jNotes.setEnabled(false);
Paso 6.- En el
método writeValueInsert()
m_sNotes = null;
jNotes.setEnabled(true);
jNotes.setText(m_sNotes);
Paso 7.- En el método writeValueDelete(Object value)
m_sNotes = String payment[6];
jNotes.setEnabled(false);
m_sNotes = null;
jNotes.setEnabled(true);
jNotes.setText(m_sNotes);
Paso 7.- En el método writeValueDelete(Object value)
m_sNotes = String payment[6];
jNotes.setEnabled(false);
Paso 8.– En el método writeValueEdit(Object value)
m_sNotes =String payment[6];
jNotes.setEnabled(false);
m_sNotes =String payment[6];
jNotes.setEnabled(false);
Paso 9. En el
método createValue()
Object[] payment = new Object[7];
…
String snotes = “”;
m_sNotes = jNotes.getText();
payment[6] = m_sNotes == null ? snotes : m_sNotes;
Object[] payment = new Object[7];
…
String snotes = “”;
m_sNotes = jNotes.getText();
payment[6] = m_sNotes == null ? snotes : m_sNotes;
Comentarios
Publicar un comentario