Comarch Mobile Sprzedaż – rozwiąż problem z przesyłaniem zdjęć

Przychodzimy do Państwa z kolejnym wpisem technicznym. Tym razem opiszemy dla Państwa rozwiązaniem problemu z przesyłaniem zdjęć w Comarch Mobile Sprzedaż. Słowem wstępu przypomnę o naszym ostatnim wpisie technicznym w którym poruszaliśmy temat dodawania funkcji dodatkowej. Przejdźmy do sedna!

Opis problemu z przesyłaniem zdjęć

Użytkownicy posiadający kilkanaście tysięcy i więcej zdjęć pojawia się błąd z przesyłaniem zdjęć. Błąd ten doprowadza to tego, że nie jest możliwe przeprowadzenie pierwszej synchronizacji. Przez to nie jest możliwa praca na nowym urządzaniu.

Rozwiązania problemu z przesyłaniem zdjęć

Wyłączenie zdjęć

Pierwszym i najprostszym rozwiązaniem, jeżeli użytkownik nie potrzebuje zdjęć, jest ich wyłączenie. By to zrobić należy na serwerze w katalogu mobile odnaleźć plik konfiguracyjny. W pliku należy wyłączyć przesyłanie zdjęć.

Kompresja zdjęć na bazie

Jeżeli powyższe rozwiązanie nie może zostać wprowadzone możemy przeprowadzić kompresję zdjęć. Proponujemy Państwu narzędzie do przeprowadzenia tego procesu.

Pamiętaj, że musisz być zalogowanym do Społeczności Comarch by móc wyświetlić post.

Kompresja zdjęć wysyłanych do Mobile

Na serwerze w pliku …\Serwer synchronizacji\Methods\articlesphotos.configuration wykonujemy kompresję. Aby naprawić błąd w opcjach kompresji należy ustawić właściwości:

Size=400

DoResize=True

DoCompression=True

HeartBeat=True

MultiThreading= True

MaxUserThreadsNumber=5

MaxServerThreadsNumber=10

Modyfikacja w rejestrze

W edytorze rejestru systemu Windows należy odszukać ścieżkę: Komputer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ServerService\Parameters. Po wejściu w edycję rejestru należy zmienić parametr AppParameters. Proces ten zawiera informacje o możliwej ilości pamięci RAM, którą może wykorzystać proces Javy podczas wykonywania synchronizacji. Wartość domyślnie jest ustawiona na 1024m, należy ją zwiększyć na np.4000m lub więcej.

Modyfikacja procedur SQL

Jeżeli powyższe kroki nie dają planowanego efektu należy zmodyfikować procedury SQL. Żeby to zrobić należy wejść od bazy SQL [CDN].[Mobile_Android_EksportTwrDaneBinarne]. Pamiętaj, żeby zdjęcia wysyłać partiami.

W SQL zmodyfikuj następujące części kodu:

JOIN SyncFramework.Photos ON Id = TwA_DABId AND UpdateTS > @SyncTS AND (UserCenterId = 0 OR UserCenterId = @UserCenterId)

Zamień na:

JOIN SyncFramework.Photos ON Id = TwA_DABId –AND UpdateTS > @SyncTS AND (UserCenterId = 0 OR UserCenterId = @UserCenterId)

Natomiast tutaj modyfikacja nastąpi kilka razy:

WHERE DATALENGTH(DaB_Wartosc) > 0

Zamień na:

WHERE DATALENGTH(DaB_Wartosc) > 0 AND DAB_DABID <5000

Po przesłaniu partii zdjęć zamień na:

WHERE DATALENGTH(DaB_Wartosc) > 0 AND DAB_DABID >=5000 AND DAB_DABID <10000

Po przesłaniu kolejnej partii zdjęć zamień na:

WHERE DATALENGTH(DaB_Wartosc) > 0 AND DAB_DABID >10000 AND DAB_DABID <15000

Jeżeli potrzebujesz możesz kontynuować proces zmieniając wartości 2 ostatnich liczb w powyższym ciągu zapytania.

Zapraszamy na darmową prezentację Comarch Mobile. Skontaktuj się z nami!
Telefonicznie 12 260 44 50 lub mailowo.

Jeżeli są Państwo zainteresowani innymi ułatwieniami w prowadzeniu firmy.
Zapraszamy do naszego sklepu!