Witam ponownie bardzo serdecznie,
Otóż mam do Was teraz nieco złożone pytanie, a w zasadzie kilka pytań, które w sumie złożą się na całe sedno tego posta. Otóż na wstępie powiem, że piszę dla firmy w której realizuję praktykę - pracę inżynierską. W dużym skrócie na czym ma polegać moja aplikacja: Firma ta ma 2 sklepy internetowe postawione na bazie MySQL, moja aplikacja pobiera nowe zamówienia z tych sklepów i przesyła je do systemu zarządzania sprzedażą - Subiekta. Oczywiście tam w Subiekcie tworzą się zamówienia od klienta, faktury i wiele wiele innych rzeczy. Następnie zamówienie które wybierze handlowiec, używając mojej aplikacji jest przesyłane bezpośrednio do API firmy kurierskiej DPD. Ot cała funkcjonalność aplikacji w wielkim skrócie.
Żebyście nie myśleli że piszę bo nic nie mam, nie nie. Otóż funkcjonalność w bardzo dużej mierze została przeze mnie wykonana. Jakby nie było robię to już ponad miesiąc. A mianowicie:
- połączenie z bazą i pobranie zamówień
- przetworzenie zamówienia ze sklepu do Subiekta (tworzenie faktur, zamówień, dodawanie towarów, kontrahentów i wiele innych jest już zrealizowane)
- Jeśli chodzi o nadanie zlecenia dla firmy kurierskiej to do tej pory testowałem system SenditAPI, aczkolwiek szef powiedział, że będą chcieli łączyć się bezpośrednio z DPD więc będę musiał jeszcze tym się pobawić, ale w głównej mierze wiem jak to działa
I teraz tak, funkcjonalność ta jest i działa aczkolwiek było to robione wszystko w ramach testowania, bez żadnych wstępnych GUI czy innych przygotowań. Po prostu klepałem kod i robiłem co chciałem zrobić (starałem się oczywiście wszystko obiektowo, aby mieć łatwiej przy dodawaniu kolejnych funkcjonalności). Mam takie pytanie do Was:
- W jaki sposób najlepiej jest zrobić połączenia z dwoma bazami? Czy muszę zrobić tak, że najpierw łączę się z jedną bazą, pobieram zamówienia, kończę połączenie. Potem łączę się z drugą bazą, pobieram zamówienia i zamykam połączenie? Czy istnieje jakaś inna możliwość, aby to zrobić lepiej, optymalniej? No bo w sumie do tej pory nie miałem jeszcze okazji łączyć się z dwoma bazami i wyciągać z nich informacje. Jakby nie było, potem gdy uzytkownik aplikacji będzie wybierał zamówienie, żeby je dalej przekazać do Subiekta to kodowo będę musiał zidentyfikować te zamówienie że należy akurat do tej bazy a nie do tej drugiej. I wtedy znów odpowiednio w zależności której bazy dotyczy zamówienie otwierać itd. Proszę o porady z tym związane :)
- Do tej pory pisałem aplikację w formie SDI. Szef powiedział że aplikacja finalna ma być w MDI. Jeśli chodzi o interfejs graficzny to dostanę go dopiero za około 2 tygodnie. Więc do tego czasu chciałbym sam sobie przejść i poćwiczyć nieco MDI (żeby nie było że nie znam, bo znam, tylko mało używałem). Bardzo by mi się przydały wszelkie porady związane z tworzeniem aplikacji MDI, na co zwracać uwagę itd. Wiadomo, rzecz najważniejsza to jest aby wszystko było jak najlepiej obiektowo zrealizowane.
To może tyle na wstępie jak dyskusja się rozwinie, a mi przyjdą kolejne pytania to będę pisał :)