Ανανέωση ιστοσελίδας
ms-office.gr > Forum > Microsoft Access > Access - Ερωτήσεις / Απαντήσεις > [ Εκθέσεις ] ΟΡΙΣΜΟΣ ΣΥΓΚΕΚΡΙΜΕΝΩΝ ΠΕΔΙΩΝ ΣΕ ΕΚΘΕΣΗ

Access - Ερωτήσεις / Απαντήσεις Access + VBA... Εδώ δεν υπάρχουν όρια!

Απάντηση στο θέμα

 

Εργαλεία Θεμάτων Τρόποι εμφάνισης
  #1  
Παλιά 14-07-20, 12:43
Όνομα: ΚΩΣΤΑΣ
Έκδοση λογισμικού Office: Ms-Office 2013
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 28-01-2020
Μηνύματα: 31
Προεπιλογή ΟΡΙΣΜΟΣ ΣΥΓΚΕΚΡΙΜΕΝΩΝ ΠΕΔΙΩΝ ΣΕ ΕΚΘΕΣΗ

Καλημέρα σε όλους.
Το πιο πολύτιμο Forum για το Office .

Στην μικρή βάση δεδομένων της Access που ανεβάζω θέλω στην έκθεση ΠΑΡΑΓΓΕΛΙΕΣ2 που υπάρχει να εκτυπώνεται κάθε σελίδα με 14 πεδία (λεπτομέρεια) άσχετα εαν υπάρχουν αντίστοιχες εγγραφές. Οπως στην τελευταία σελίδα της έκθεσης στην προβολή εκτύπωσης.

Ο σχεδιασμός της έκθεσης είναι πολύ λιτός για εξοικονόμηση όγκου .
Συνημμένα Αρχεία
Τύπος Αρχείου: zip Βάση δεδομένων1.zip (427,0 KB, 9 εμφανίσεις)
Απάντηση με παράθεση
  #2  
Παλιά 14-07-20, 18:16
Super Moderator
Όνομα: ΓΙΩΡΓΟΣ
Έκδοση λογισμικού Office: Ms-Office 2010, Ms-Office 2013, Ms-Office 2016, Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 14-01-2014
Μηνύματα: 234
Προεπιλογή

Καλησπέρα Κώστα,

Ανοίγοντας την έκθεση «ΠΑΡΑΓΓΕΛΙΕΣ 2» βγάζει προτροπή για αριθμό παραγγελίας όπως φαίνεται στην επισυναπτόμενη εικόνα. Από πού προέρχεται αυτό?

Αν κατάλαβα καλά το ζητούμενο είναι να γεμίζει η έκθεση με 14 γραμμές ακόμα και δεν υπάρχου δεδομένα - εγγραφές. Σωστά?

Ευχαριστώ.
Συνημμένα Thumbnails
ΟΡΙΣΜΟΣ ΣΥΓΚΕΚΡΙΜΕΝΩΝ ΠΕΔΙΩΝ ΣΕ ΕΚΘΕΣΗ-img.jpg  
__________________
Βραχνάκης Γιώργος
vrahnakisg@gmail.com
Απάντηση με παράθεση
  #3  
Παλιά 15-07-20, 00:09
Super Moderator
Όνομα: ΓΙΩΡΓΟΣ
Έκδοση λογισμικού Office: Ms-Office 2010, Ms-Office 2013, Ms-Office 2016, Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 14-01-2014
Μηνύματα: 234
Προεπιλογή

Καλησπέρα Κώστα,

Δες μια πρόταση από τον φίλο Τάσο Φιλοξενίδη.

Ευχαριστώ.
Συνημμένα Αρχεία
Τύπος Αρχείου: zip RptLineCount.zip (38,3 KB, 9 εμφανίσεις)
__________________
Βραχνάκης Γιώργος
vrahnakisg@gmail.com

Τελευταία επεξεργασία από το χρήστη Tasos : 15-07-20 στις 01:34.
Απάντηση με παράθεση
  #4  
Παλιά 15-07-20, 10:19
Όνομα: ΚΩΣΤΑΣ
Έκδοση λογισμικού Office: Ms-Office 2013
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 28-01-2020
Μηνύματα: 31
Προεπιλογή

Ναι το θέμα μου είναι ακριβώς να γεμίζει η έκθεση με 14 γραμμές .

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

Στην πρόταση του Τάσου έχει προστεθεί πίνακας temp που στη δικιά μου βάση δεδομένων δεν θα βοηθήσει .

Τελευταία διευκρίνιση , προσθέτω ήδη κενές εγγραφές στον πίνακα Τιμολόγια1 για να φτάνω τις απαραίτητες 14 γραμμές . Αυτό θέλω να αποφύγω.

Περιμένω κάποια πρόταση ακόμη .

Ευχαριστώ
Απάντηση με παράθεση
  #5  
Παλιά 15-07-20, 10:33
Το avatar του χρήστη Tasos
Διαχειριστής
Όνομα: Τάσος Φιλοξενιδης
Έκδοση λογισμικού Office: Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική, Γερμανική
 
Εγγραφή: 21-10-2009
Μηνύματα: 2.011
Προεπιλογή

Καλημέρα! Στο παράδειγμα υπάρχει ήδη κώδικας VBA που κάνει ακριβώς αυτή τη δουλειά δηλαδή προσθέτει τόσες κενές γραμμές στον πίνακα temp ώστε να είναι στο σύνολο 14 ανά σελίδα στην έκθεση.

Κώδικας:
Option Compare Database
Option Explicit
Private Const AllowedRecs = 14

Sub CreateReport()
    Dim ModX As Integer
    Dim i As Integer
    Dim RecCount As Long
    Dim CostPos As Long
    Dim db As DAO.Database
    Dim rsBase As DAO.Recordset
    Set db = CurrentDb
    db.Execute "DELETE * FROM temp"    ', dbFailOnError

    ' Εδώ μπορούν να δοθούν περισσότερα κριτήρια πχ. ημερομηνία
    ' ώστε να εισαχθούν μόνο οι εγγραφές που πραγματικά πρέπει να εκτυπωθούν.
    db.Execute "INSERT INTO temp SELECT ΤΙΜΟΛΟΓΙΑ1.* FROM ΤΙΜΟΛΟΓΙΑ1"    ' WHERE ....


    Set rsBase = db.OpenRecordset("SELECT DISTINCT ΤΙΜΟΛΟΓΙΑ1.[ΘΕΣΗ ΚΟΣΤΟΥΣ]FROM ΤΙΜΟΛΟΓΙΑ1")
    If rsBase.RecordCount Then
        While Not rsBase.EOF
            CostPos = rsBase![ΘΕΣΗ ΚΟΣΤΟΥΣ]
            RecCount = DCount("*", "temp", "[ΘΕΣΗ ΚΟΣΤΟΥΣ] = " & CostPos)
            ModX = AllowedRecs - (RecCount Mod AllowedRecs)
            If ModX <> AllowedRecs Then
                For i = 1 To ModX
                    db.Execute "INSERT INTO temp ( [ΘΕΣΗ ΚΟΣΤΟΥΣ] ) Values (" & CostPos & ")"
                Next
            End If
            rsBase.MoveNext
        Wend
    End If
    rsBase.Close
    Set rsBase = Nothing
    Set db = Nothing
End Sub
Θα χρειαστεί λοιπόν να τρέχεις τον κώδικα με ένα κουμπί για να φτάνεις στο ζητούμενο.
Ίσως χρειαστεί να τροποποιηθεί ο κώδικας ώστε να φορτώνονται μόνο τα δεδομένα προς εκτύπωση που θα έχεις ορίσει από μια φόρμα χρησιμοποιώντας πεδία Ημερομηνία από - έως ή κάποιο άλλο είδος φιλτραρίσματος.
Αυτή είναι και η μοναδική λύση.
__________________
Ms-Office Development Team
Ανάπτυξη επαγγελματικών εφαρμογών

Τελευταία επεξεργασία από το χρήστη Tasos : 15-07-20 στις 22:10.
Απάντηση με παράθεση
  #6  
Παλιά 15-07-20, 11:03
Όνομα: ΚΩΣΤΑΣ
Έκδοση λογισμικού Office: Ms-Office 2013
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 28-01-2020
Μηνύματα: 31
Προεπιλογή

Τάσο ευχαριστώ.

Θα το παλέψω και βλέπουμε.
Απάντηση με παράθεση
  #7  
Παλιά 23-07-20, 12:11
Όνομα: ΚΩΣΤΑΣ
Έκδοση λογισμικού Office: Ms-Office 2013
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 28-01-2020
Μηνύματα: 31
Προεπιλογή

Τάσο καλημέρα.

Σε ευχαριστώ για τη λύση που μου έδωσες στο θέμα ΑΝΑΖΗΤΗΣΗ ΕΓΓΡΑΦΗΣ ΣΕ ΠΕΔΙΟ.

Στο συγκεκριμένο μας πρόβλημα τώρα. Θέλω να σε ρωτήσω εαν μπορούμε να ορίσουμε απευθείας στην έκθεση το όριο των 14 εκτυπώσιμων σειρών .

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

Αυτό ακριβώς θέλω να αποφύγω γιατί φορτώνεται ο πίνακας ΤΙΜΟΛΟΓΙΑ1 και αυτός που έφτιαξες temp με πάρα πολλές κενές εγγραφές.

Στη δικιά μου βάση δεδομένων στον πίνακα ΤΙΜΟΛΟΓΙΑ1 έχω σύνολο 20.000 εγγραφές από τις οποίες οι 9.000 είναι κενές και δημιουργήθηκαν μόνο και μόνο για την εκτύπωση σε 14 σειρές. Μήπως αυτό μου δημιουργήσει θέμα αργότερα μιας και οι εγγραφές θα πολλαπλασιαστούν ;

Περιμένω απάντηση σου .

Ευχαριστώ
Απάντηση με παράθεση
  #8  
Παλιά 23-07-20, 16:08
Το avatar του χρήστη Tasos
Διαχειριστής
Όνομα: Τάσος Φιλοξενιδης
Έκδοση λογισμικού Office: Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική, Γερμανική
 
Εγγραφή: 21-10-2009
Μηνύματα: 2.011
Προεπιλογή

Καλησπέρα Κώστα!

Ο πίνακας ΤΙΜΟΛΟΓΙΑ1 δεν χρειάζεται να περιέχει κενές εγγραφές.

Οι κενές εγγραφές θα προστεθούν στον πίνακα temp από τον κώδικα.

Συνεπώς θα πρέπει να απομονώσεις τον όποιο κώδικα χρησιμοποιείς που προσθέτει κενές
εγγραφές στον ΤΙΜΟΛΟΓΙΑ1 και να χρησιμοποιήσεις τον κώδικα του προηγούμενου μου μηνύματος.

Μπορείς να δώσεις στη σταθερά Private Const AllowedRecs = 14 το πλήθος των εγγραφών που πρέπει να εμφανίζονται ανά σελίδα στην έκθεση.

Επισυνάπτω σχετικό παράδειγμα από όπου μπορεί κανείς να επιλέξει ποιες εγγραφές θα εκτυπωθούν με βάση την ημερομηνία.

Καλή συνέχεια!

Τάσος .
Συνημμένα Αρχεία
Τύπος Αρχείου: accdb AccPrint.accdb (628,0 KB, 11 εμφανίσεις)
__________________
Ms-Office Development Team
Ανάπτυξη επαγγελματικών εφαρμογών
Απάντηση με παράθεση
Απάντηση στο θέμα


Δικαιώματα - Επιλογές
Δε μπορείτε να δημοσιεύσετε νέα μηνύματα
Δε μπορείτε να δημοσιεύσετε απαντήσεις
Δεν μπορείτε να επισυνάψετε αρχεία
Δεν μπορείτε να επεξεργαστείτε τα μηνύματα σας

Ο κώδικας ΒΒ είναι σε λειτουργία
Τα Smilies είναι σε λειτουργία
Ο κώδικας [IMG] είναι σε λειτουργία
Ο κώδικας HTML είναι εκτός λειτουργίας
Trackbacks are εκτός λειτουργίας
Pingbacks are εκτός λειτουργίας
Refbacks are εκτός λειτουργίας


Παρόμοια Θέματα

Θέμα Δημιουργός Forum Απαντήσεις Τελευταίο Μήνυμα
Εύρεση εγγραφής και αντιγραφή συγκεκριμένων πεδίων σε νέα εγγραφή vala Access - Ερωτήσεις / Απαντήσεις 1 13-09-18 21:30
[ Εκθέσεις ] ενοποιηση δεν πεδίων στην εκθεση ramnikos71 Access - Ερωτήσεις / Απαντήσεις 2 12-07-16 20:44
[Γενικά] Ορισμός σειράς Tab xristos Excel - Ερωτήσεις / Απαντήσεις 8 21-05-12 10:46
[ Φόρμες ] ΟΡΙΣΜΟΣ ΤΙΜΗΣ artchrist73 Access - Ερωτήσεις / Απαντήσεις 5 05-11-11 10:21


Η ώρα είναι 07:56.