Σύνδεση με Google+

ή με

ΤΕΣΑΕ ΑΤΕ
  • H Επιχείρηση
    • Τεχνολογία
    • Pegasus Phaethon
    • Tα Νέα της ΤΕΣΑΕ
  • Oι Συνεργάτες
  • Tοπικά Λογισμικά
    • Λογισμικά (Pegasus ERP)
      • Εμπορικές Επιχειρήσεις
      • Στεγνοκαθαριστήρια, Ταπητοκαθαριστήρια
      • Χώροι Εστίασης (Εστιατόρια, Καφετέριες, Bar, Delivery)
      • Συνεργεία, Φανοποιεία, Ανταλλακτικά
      • Ελαιοτριβεία
      • Κρεοπωλεία
    • Video Παρουσιάσεις
    • Πρότυπες Μελέτες ή Εφαρμογές
    • Ιστορικό Αλλαγών Pegasus ERP
    • Module Phone
    • Module PDA Client
    • Module Γέφυρες Λογιστικής
    • Pegasus ERP και Διασύνδεση EFT POS
  • Διαδικτυακά Λογισμικά
    • Λογισμικά (Pegasus Web App)
      • Εμπορικές Επιχειρήσεις
      • Λιανική Πώληση - Retail
      • Παροχή Υπηρεσιών
      • Πρατήρια Υγρών Καυσίμων
      • Ξενοδοχειακές Μονάδες
      • Μεταφορικές Εταιρίες
      • Γυμναστήρια , Αθλητικά Κέντρα
      • Χώροι Στάθμευσης - Parking
      • Χώροι Εστίασης (Εστιατόρια, Καφετέριες, Bar, Take Away)
      • Γεωπονικές Επιχειρήσεις
    • Video Παρουσιάσεις
    • Pegasus Software Docs
    • Ιστορικό αλλαγών Pegasus Web App
    • WEB App REST API
    • Pegasus Web App και Διασύνδεση EFT POS
  • Ηλεκτρονική Τιμολόγηση
Pegasus WEB App REST API

π-Αναφορές

Προβολή όλων των API
Περιεχόμενο
  • Εισαγωγή
  • Γενικοί Κωδικοί σφάλματος API
  • Οδηγίες Bearer Token - Ταυτοποίηση Χρήστη του Rest API
  • Web App Module π-Αναφορές (query)
    • Παραλαβή όλων των π-Αναφορών
    • π-Αναφορά
    • π-Αναφορά (structure)
Εισαγωγή

Οι τύποι των δεδομένων του REST Service είναι:

  1. String: Συμβολοσειρά
  2. Number: Όλες οι πιθανές αριθμητικές μεταβλητές
  3. Boolean: Ακέραιος αριθμός. Οι τιμές που μπορεί να πάρει είναι 0 για το false και 1 για το true
  4. Date: Η ημερομηνία. Η ημερομηνία πρέπει να είναι της μορφής "Y-m-d"

Mπόρειτε να κατεβασετε το collation για το Postman με όλα τα end-points του service απο εδώ


Τα request παραλαβής (GET) των δεδομένων έχουν τις εξής παραμέτρους:

  1. recperpage: Το πλήθος των δεδομένων που θα γίνουν παραλαβή
  2. page: Η σελίδα των δεδομένων.
  3. order_array: Τα πεδία με το οποία θα γίνει η ταξινόμηση των αποτελεσμάτων του get.
    π.χ. /api/crm001/d00?order_array[p19]=DESC&order_array[nr01]=ACS
  4. filter: Οι συνθήκες επιλογής δεδομένων εμφάνισης.
    π.χ. /api/crm001/d00?filter[or][0][p19][starts]=ψ&filter[or][1][p19][equals]=Φύλακας 1  - Οδηγος&filter[and][0][nr01][lt]=3000033
    Εάν Θέλω να μου φέρει από τους συναλλασσόμενους όσους ο διακριτικός τους τίτλος ξεκινά από "ψ" ή είναι ίσος με "Φύλακας 1  - Οδηγος" και το Μ.Κ. είναι μικρότερο από 3000033.
    Αναλυτικά.
    Στο filter τα όρισμα είναι:
    1. 'or' ή 'and' όπου ορίζεται η συνθήκη σύνδεσης των υποσυνθηκών.
    2. Ένας αύξοντας αριθμός που χαρακτηρίζει την υποσυνθήκη.
    3. Το πεδίο στο οποίο θα υπάρχει ο περιορισμός.
    4. Η συνθήκη του περιορισμού*.
    5. Η τιμή σύγκρισης με το πεδίο

* Οι συνθήκες περιορισμών είναι:

Όνομα Περιγραφή  MySQL Operators - Functions  Παράδειγμα 
equals Ισότητα  =  filter[and][0][p19][equals]=Φύλακας 1
notequals Διάφορο !=  filter[and][0][p19][notequals]=Φύλακας 1
starts Ξεκινάει από LIKE 'a%' filter[and][0][p19][starts]=Ψ
contains Περιέχει LIKE '%a%' filter[and][0][p19][contains]=Ψ
ends Τελειώνει LIKE '%a' filter[and][0][p19][ends]=Ψ
in Εμπεριέχεται σε ένα σύνολο IN()  filter[and][0][nr01][in][0]=3000027&filter[and][0][nr01][in][1]=3000028&filter[and][0][nr01][in][2]=3000029
notin Δεν εμπεριέχεται σε ένα σύνολο NOT IN() filter[and][0][nr01][notin][0]=3000027&filter[and][0][nr01][notin][1]=3000028&filter[and][0][nr01][notin][2]=3000029
lt Το πεδίο είναι μικρότερο από την τιμή <  filter[and][0][nr01][lt]=3000030
lte Το πεδίο είναι μικρότερο ή ίσο από την τιμή <=  filter[and][0][nr01][lte]=3000030
gt Το πεδίο είναι μεγαλύτερο από την τιμή  >  filter[and][0][nr01][qt]=3000030
gte Το πεδίο είναι μεγαλύτερο ή ίσο από την τιμή  >=  filter[and][0][nr01][qte]=3000030 

* Εκτός από τα πεδία του response μπορούμε να χρησιμοποιήσουμε και το πεδιο remdatetime που περιεχει το concat(remdate , ' ' , remtime) ετσι μπορουμε να αναζητησουμε τα record που ειναι μεγαλυτερα απο μια ημερομηνία και ώρα.
π.χ. ?filter[and][0][remdatetime][gte]=2021-05-03 19:20:00


Τα request διαγραφής δεδομένων (DELETE) θα πρέπει πάντα να έχουν συμπληρωμένο το {id} που θα διαγραφεί


Τα request δημιουργίας νέων εγγραφών (POST) εάν έχουν συμπληρωμένο το {id} και βρουν την εγγραφή την κάνουν update


Τα request διαχείρισης εγγραφών (PUT) θα πρέπει πάντα να έχουν συμπληρωμένο το {id} το οποίο θα διαχειριστούν



Σε όλα τα (GET) μπορούμε να συμπληρώσουμε μετά τα endpoints μπορούμε να συμπληρώσουμε.

/all
Mε το /all μας φέρνει όλα τα δεδομένα και σε όσα πεδία συνδέονται με άλλο πινάκα εκτός από το πεδίο του κωδικού μας φέρνει και την περιγραφή από το δεύτερο πίνακα με την λογική v_selectbox_{όνομα πεδίου}

/gridall
Η ίδια λογική με το /all αλλα μας φέρνει μόνο τα πεδία που έχουν οριστεί ότι εμφανίζονται στις λίστες δεδομένων.

/{id}
Με το /{id} μας  φέρνει την εγγραφή με μοναδικό κωδικό {id}

Γενικοί Κωδικοί σφάλματος API
Γενική μορφή ενός σφάλματος
{
	"code":Κωδικός Σφάλματος ,
	"data":{ 
		"error":{
			"title":"Τίτλος Σφάλματος",
			"detail":"Περιγραφή Σφάλματος"
		}
	}
}
Τίτλος Πεδίο Τύπος Μέγεθος Σφάλμα
Κωδικός Σφάλματος code String  
Η περιγραφή του Σφάλματος data Array   Πίνακας με την περιγραφή του σφάλματος.
{"error":{ "title":"Τίτλος Σφάλματος", "detail":"Περιγραφή Σφάλματος"}}
Method: GET, POST, DELETE, PUT
RESPONSE / HTTP response code: 400
Εάν το module το οποίο ορίζεται URL δεν υπάρχει
RESPONSE / HTTP response code: 400
Εάν η μέθοδος ή ο πίνακας που καλείται  δεν υπάρχει κάτω από το module του URL
RESPONSE / HTTP response code: 400
Εάν η μέθοδος ή ο πίνακας που καλείται δεν έχει το δικαίωμα εκτέλεσης κάτω από το AppID της σύνδεσης
RESPONSE / HTTP response code: 401
Εάν η μέθοδος που καλείται χρειάζεται δικαιώματα και ο συνδεδεμένος χρήστης δεν τα έχει
RESPONSE / HTTP response code: 405
Όταν η μέθοδος του request δεν υποστηρίζεται από το Service
Method: GET
RESPONSE / HTTP response code: 209
Δεν βρέθηκαν εγγραφές στην εκτέλεση του get
Method: POST
RESPONSE / HTTP response code: 403
Πρόβλημα κατά την αποθήκευση
RESPONSE / HTTP response code: 500
Εκτέλεση μεθόδου POST όπου το Post Size είναι μεγαλύτερο από το όριο του server
Method: DELETE
RESPONSE / HTTP response code: 400
Δε βρέθηκε o πίνακας ή ο μοναδικός κωδικός
RESPONSE / HTTP response code: 403
Όταν οι περιορισμοί του πίνακα δεν επιτρέπουν τη διαγραφή της εγγραφής
RESPONSE / HTTP response code: 404
Δε βρέθηκε η εγγραφή στον πίνακα
Οδηγίες Bearer Token - Ταυτοποίηση Χρήστη του Rest API

Η ταυτοποίηση του χρήστη για τις κλήσεις του Rest API γίνεται με μέσω του Bearer token (ή access_token), το οποίο πρέπει να συμπεριλαμβάνεται στο Authorization header των request (--header 'Authorization: …').
Το access_token παραμένει ενεργό για περιορισμένο χρονικό διάστημα.

Παρακάτω παρουσιάζεται συνοπτικά η ροή που θα ακολουθήσετε:

a.Δημιουργία access token
Αρχικά καλείτε το initiate_authentication. Στην απάντηση που θα λάβετε περιέχεται ένα url το οποίο ανοίγετε και κάνετε login στο Pegasus Web App για να ταυτοποιηθεί ο χρήστης. Όταν ολοκληρωθεί το login, γίνεται redirect του browser στο redirect url που είχατε ορίσει στο αρχικό initiate_authentication με παράμετρο GET - το access_code.

Τέλος καλείτε το endpoint get_access_token χρησιμοποιώντας το access_code. Ως αποτέλεσμα θα λάβετε ένα access_token μαζί με ένα refresh_token.

b.Ανανέωση token
Όταν λήξει το access token θα λάβετε error 419 στο http_status σε οποιοδήποτε request καλέσετε με το ληγμένο access_token. Σε αυτή την περίπτωση εκτελείτε το endpoint refresh_token χρησιμοποιώντας το refresh_token που λάβατε σαν response από το get_access_token. Ως αποτέλεσμα θα λάβετε ένα νέο access token.

c.Διαχείριση Tokens μέσω του Pegasus Web App
Από το Pegasus Web App και στη διαδρομή [Toolbox->Εργαλεία Παραμετροποίησης->Παραμετροποίηση Rest Service->App IDs] διαχειρίζεστε τα Tokens που έχουν δημιουργηθεί. Μπορείτε να απενεργοποιήσετε ένα token ή να ορίσετε τα δικαιώματα για τις ενέργειες που ο χρήστης μπορεί να εκτελέσει. Για τη διαχείριση των δικαιωμάτων δεν είναι απαραίτητη η πρόσβαση στο Web App, μπορείτε να τα ορίσετε και κατά την Παραγωγή προσωρινού κωδικού(/initiate_authentication) στα πεδία pegapi01_02 και pegapi01_q10.

Web App Module π-Αναφορές (query)

Παραλαβή όλων των π-Αναφορών

Το action αυτό επιστρέφει όλες τις π-Αναφορές που μπορεί να εκτελέσει το app id της σύνδεσης

Method: GET
/api/query/reports
RESPONSE / HTTP response code: 200
ΤίτλοςΠεδίοΤύποςΜέγεθος
Μοναδικός Κωδικός π-Αναφοράςnr01Νumeric15
Περιγραφή (el)p01String200
Περιγραφή (en)ep01String200
Modulep55String50
Πίνακαςp02String20
Σημειώσεις (el)p32Memo
Σημειώσεις (en)ep32Memo
Συμμετέχει στις Δράσεις του Βασικούp06Boolean
Κατηγορίαq08Νumeric15
Υποκατηγορίαp04Νumeric15
Ιs Standardis_stdBoolean
RESPONSE / HTTP response code: 401

Invalid Token. Το access token δεν είναι έγκυρο.


RESPONSE / HTTP response code: 419

Το access token έχει λήξει. Παρακαλώ ανανεώστε το.


π-Αναφορά

Method: GET
/api/query/report/{id}
REQUEST
ΤίτλοςΠεδίοΤύποςΜέγεθος
Ο μοναδικός κωδικός της π-Αναφοράς/{id}Νumeric15
Τα φίλτρα αναζήτησης της π-Αναφοράςpeg_query_var*String
RESPONSE / HTTP response code: 200
RESPONSE / HTTP response code: 401

Invalid Token. Το access token δεν είναι έγκυρο.


RESPONSE / HTTP response code: 419

Το access token έχει λήξει. Παρακαλώ ανανεώστε το.


π-Αναφορά (structure)

Method: GET
/api/query/report/{id}/structure
RESPONSE / HTTP response code: 200
ΤίτλοςΠεδίοΤύποςΜέγεθος
Τα πεδία της π-ΑναφοράςqueryfieldsArrayΟι στήλες της π-Αναφοράς:
[ { "nr01":Μοναδικός κωδικός πεδίου, "p00":Μοναδικός κωδικός π-Αναφοράς οπου ανήκει το πεδίο, "p01":Περιγραφή πεδίου, "ep01":Αγγλική Περιγραφη πεδίου, "p06":Τύπος Μεταβλητής ( C => Χαρακτήρες (Char), D => Ημερομηνία (Date), L => Λογικό (boolean), M => Κείμενο (Μemo), N => Αριθμός (Numeric) ), "p03":Ονομα Πεδίου, "p05":Διαδοχή, "p07":Μέγεθος, "p08":Δεκαδικά, "p022":Να εμφανίζει Αθροισμα, "p023":Κρυφό Πεδίο, "isnr01":Eίναι M.K. κύριου πίνακα "mail":Το πεδίο είναι e-mail } ]
Τα πεδία της π-ΑναφοράςqueryfiltersArrayΟι συνθήκες αναζήτησης της π-Αναφοράς:
[ "nr01":Μοναδικός κωδικός πεδίου, "p00":Μοναδικός κωδικός π-Αναφοράς όπου ανήκει το πεδίο, "p01":Περιγραφή πεδίου, "ep01":Αγγλική Περιγραφή πεδίου, "p02":Όνομα Μεταβλητής, "p03":Τύπος Μεταβλητής ( C => Χαρακτήρες (Char), D => Ημερομηνία (Date), L => Λογικό (boolean), M => Κείμενο (Μemo), N => Αριθμός (Numeric) ), "p05":Διαδοχή } ]
RESPONSE / HTTP response code: 401

Invalid Token. Το access token δεν είναι έγκυρο.


RESPONSE / HTTP response code: 419

Το access token έχει λήξει. Παρακαλώ ανανεώστε το.


  • Μεσογείων 274, 15562, Eλλάδα
  • +30 210-7489589
  • Επικοινωνία
  • Επικοινωνία
  • Downloads
  • Sitemap
  • Όροι Χρήσης
Εξελίξεις Λογισμικών
Pegasus ERP Updates: 3236
Pegasus Web App Updates: 18238


ΑΜΕΑΑΜΕΑ
-A+
© Copyright TESAE SA - Γ.Ε.ΜΗ : 2120301000
  Powered by Pegasus Technology   
ΕΣΠΑ 2014-2020ΕΣΠΑ 2014-2020