Προηγούμενη τιμή Πεδίου σε javascript

61 views
Skip to first unread message

SotirisM

unread,
Jun 12, 2010, 2:55:28 AM6/12/10
to Softone Developers Network, ad...@infostatus.gr
Καλημέρα

Έχω ένα πεδίο στις γραμμές παραστατικού το οποίο μπορεί να αλλάξει ο
χρήστης.

Η λογική είναι, να γίνει μία πρόσθεση της τιμής που θα διαλέξει ο
χρήστης με την τιμή κάποιου δεύτερου πεδίου και να ενημερωθεί το
δεύτερο πεδίο, μετά το change event.

Υπάρχει κάποιος τρόπος ώστε να βρώ την παλαιά τιμή που είχε το πεδίο
πρίν το αλλάξω,
ώστε να μαζί με την πρόσθεση να κάνω την αφαίρεση της προηγούμενης
τιμής?

Δηλαδή σε ψευδoκώδικα

On_ITELINES_FIELD1 () {

ITELINES.FIELD2=ITELINES.FIELD2 + ITELINES.FIELD1 -
ITELINES.FIELD1.OLDVALUE ;

}

Ευχαριστώ.

Athanasiadis George

unread,
Jun 12, 2010, 3:08:27 AM6/12/10
to Softone Developers Network
Μιά λύση είναι να έχεις και τρίτο πεδίο το οποίο
να το ενημερώνεις εσύ με την τιμή του FIELD1
οπότε πριν το ενημερώσεις ξανά να πάρεις απο το FIELD3
την παλιά τιμή του FIELD1

δηλαδή

On_ITELINES_FIELD1 () {

ITELINES.FIELD2=ITELINES.FIELD2 + ITELINES.FIELD1 -
ITELINES.FIELD3;
ITELINES.FIELD3 = ITELINES.FIELD1; // εκχωρείς την νέα τιμή του
FIELD1 στο FIELD3
// για να την έχεις μετά σαν παλιά τιμή του FIELD1
}

Sotirios Milios

unread,
Jun 12, 2010, 3:13:42 AM6/12/10
to so...@googlegroups.com
Ευχαριστώ πολύ, έτσι το έχω υλοποιήσει,
αλλά φανταζόμουν ότι κάτι μου διαφεύγει.

ΟΚ.

2010/6/12 Athanasiadis George <cfo...@otenet.gr>
}

--
Softone Developers Network group.
To post to this group, send email to so...@googlegroups.com

MakisCE

unread,
Jun 15, 2010, 4:09:26 AM6/15/10
to Softone Developers Network
> αλλά φανταζόμουν ότι κάτι μου διαφεύγει.

και πιθανόν να διαφεύγει
τι γίνεται οταν κάνουμε edit υπάρχον παραστατικό;
πως ενημερώνεται το βοηθητικό FIELD3;


Σημ. μπορώ να σκεφτώ μερικές 'πατέντες', αλλά οι πολλές πατέντες δεν
κάνουν καλό :)

πιο απλό θα ήταν το event να είχε ένα προαιρετικό argument
ON_TABLE_FIELD(oldValue)

Athanasiadis George

unread,
Jun 15, 2010, 7:01:17 AM6/15/10
to Softone Developers Network
Το FIELD3 ενημερώνεται από event του FIELD1.
Στην κυριολεξία είναι "κρυφό" πεδίο στο οποίο
δίνουμε την τιμή του FIELD1 οταν αλλάξει τιμή το FIELD1.
Αρα πάντα έχει την προηγούμενη τιμή του FIELD1.
Αν είμαστε σε νέα εγγραφή ή διόρθωση δεν ενδιαφέρει.

MakisCE

unread,
Jun 15, 2010, 9:02:55 AM6/15/10
to Softone Developers Network
Φίλε Γιώργο,

η ερώτησή μου αφορούσε το σενάριο
οπου έχεις μερικές χιλιάδες παραστατικά ΗΔΗ καταχωρημένα (πχ αγορών)
πριν εσύ χρειαστείς να κάνεις την πατέντα με το FIELD3
για ένα υποσύνολο αυτών των παραστατικών (πχ παραγγελίες, οπου πάλι
έχεις ΗΔΗ καταχωρημένες)

Να υποθέσω κάνεις UPDATE MTRLINES SET FIELD3=FIELD1 WHERE.. για τα
ήδη υπάρχοντα;

Anyway, πατέντες υπάρχουν πολλές, λύσεις μετρημένες
ON_TABLE_FIELD(oldValue)
ή έστω
ON_TABLE_FIELD_BEFORECHANGE() // όπως πρότεινε ο συνάδελφος Nick
Μαλιακκας σε τοπική μας συζήτηση
όπου το πεδίο να μην έχει αλλάξει ακόμα τιμή, κι έτσι να έχεις την
ευκαρία να την 'κρατήσεις' σε μια μεταβλητή

Μάκης

Athanasiadis George

unread,
Jun 15, 2010, 4:25:35 PM6/15/10
to Softone Developers Network
Αγαπητέ συνάδελφε

Η SoftOne έχει κατασκευάσει τον SoftOne Business Explorer.
Μας έχουν δώσει αρκετά εργαλεία ( μέχρι και Business IDE )

Προσωπικά αρκούμαι με τα εργαλεία που μας έχουν δώσει και προσπαθώ
να βρίσκω λύσεις μεσα στα ορια που θέτει ένα τέτοιο εργαλείο.

Δεν καταλαβαίνω την φράση σου
πατέντες υπάρχουν πολλές , λύσεις μετρημένες.
Το να κάνω ένα update στην βάση για να κάνει την δουλειά του ο πελάτης
το
βρίσκω φυσικό.

Αν η SoftOne αποφασίσει και το μετατρέψει σε SoftOne Business
Compiler δεν το ξέρω.
Αρκούμαι προς το παρόν στον SoftOne Business Explorer.

Και οτι θα φέρει το μέλλον καλοδεχούμενο θα είναι.
Η SoftOne μέχρι τώρα έχει αποδείξει οτι μπορεί και "φέρνει" νέο αέρα
στο Ελληνικό Software.
Ασ μην ξεχνάμε και τα Zastava που κυκλοφοράνε ακόμα στην αγορά

MakisCE

unread,
Jun 16, 2010, 5:21:20 AM6/16/10
to Softone Developers Network
Φίλε Γιώργο,

απόλυτα σεβαστή η άποψή σου,
δεν θα επεκταθώ, μια και δεν είναι το θέμα του thread.

Προσωπικά, το μόνο που επιθυμώ είναι να κάνω τη δουλειά μου
όσο γίνεται σωστότερα (σε software engineering terms) και ευκολότερα
(σε development terms)

Με τη φράση απλά διατύπωνα την 'ενδεδειγμένη' (κατ' εμέ) λύση
και τη δυσαρέσκειά μου σε λύσεις που απλά παρακάμπτουν το πρόβλημα
και τις περισσότερες φορές οδηγούν σε άλλα στη διάρκεια του χρόνου
- κι αυτές αποδεκτές είναι, κι έχω 'εφεύρει' κι εγώ πάμπολλες και
εφαρμόσει ακόμα περισσότερες,
αλλά σε ένα forum απο Developers,
νομίζω υπάρχει χώρος να (συ)ζητάμε και το κάτι παραπάνω όσον αφορά την
ποιότητα των λύσεων.

Ελπίζω να μπορώ να επισημαίνω τυχόν παραλείψεις (τεχνικού τύπου)
ή απλά WishList items
χωρίς απαραίτητα αυτό να με μετατρέπει σε αντι-Softone χαρακτήρα :-!

Reply all
Reply to author
Forward
0 new messages