Ogólny opis:
Szukamy wykonawcy do rozwiązania zadania automatyzacji aktualizacji danych o stanach towarów dostawców. W pierwszej kolejności rozważany jest poszukiwanie i adaptacja istniejącego gotowego rozwiązania. Jeśli nie znajdzie się gotowe rozwiązanie, które spełnia kluczowe wymagania, rozważana jest rozwój rozszerzenia od podstaw.
Głównym celem jest skonfigurowanie stabilnego i automatycznego ładowania stanów. Dodatkowym (opcjonalnym) zadaniem jest skonfigurowanie ładowania cenników. Możliwe jest rozważenie osobno lub w kompleksie.
Konfiguracja 1C:
Program: Business Automation Software for small company. PROF
Wersja: 1.6.21.3
Wymóg: Rozwiązanie musi być zrealizowane wyłącznie w formie rozszerzenia, bez wprowadzania zmian do głównej konfiguracji.
Podejście do realizacji (Ważna uwaga dla wykonawców):
Jesteśmy otwarci na Wasze propozycje! Jeśli macie:
Gotowe rozszerzenie, które częściowo spełnia wymagania — proponujcie je z opisem niezbędnych poprawek.
Swoje wizje lub alternatywne podejście do realizacji — z przyjemnością je rozważymy. Naszym celem jest uzyskanie efektywnego narzędzia roboczego, i jesteśmy gotowi być elastyczni w sposobach jego osiągnięcia.
Podstawowe wymagania dotyczące funkcjonalności:
1. Pozyskiwanie danych:
- E-maile z bezpośrednimi załącznikami (plikami).
- E-maile, w których treści znajduje się bezpośredni link do pobrania pliku (bez konieczności wprowadzania loginów/hasła na zewnętrznych portalach).
Filtrowanie załączników: Możliwość wskazania "maski" nazwy pliku lub rozszerzenia dla każdego dostawcy (na przykład, *stock*.xlsx), aby system automatycznie ignorował inne załączniki w e-mailu (faktury, zdjęcia z podpisów, katalogi PDF).
Formaty plików: Excel (.xls, .xlsx), CSV, XML.
2. Konfiguracja i przetwarzanie danych:
Należy zrealizować elastyczny interfejs konfiguracji dla każdego dostawcy osobno.
Logika dopasowania asortymentu: Dopasowanie towarów powinno odbywać się ściśle według artykułu.
Przetwarzanie niedopasowanych pozycji: Jeśli artykuł z pliku nie zostanie znaleziony w bazie 1C, system nie powinien tworzyć nowego asortymentu. Zamiast tego, powinien być generowany raport z listą takich pozycji do dalszej analizy przez menedżera.
Przetwarzanie niepełnych plików: System powinien poprawnie przetwarzać pliki, które zawierają tylko stany (bez cen) lub tylko ceny (bez stanów), aktualizując w 1C tylko te dane, które są obecne w pliku.
Optymalizacja pracy z pamięcią: Parsowanie dużych plików Excel powinno odbywać się maksymalnie optymalnie (na przykład, odczyt przez dokument tabelaryczny po stronie serwera lub za pomocą specjalistycznych bibliotek), aby uniknąć awaryjnego zakończenia 32-bitowego programu klienckiego z powodu braku pamięci operacyjnej.
Jednostki miary i waluty (opcjonalnie): Możliwość wskazania waluty pliku wejściowego (z automatyczną konwersją) oraz określenia współczynnika pakowania dla poprawnego obliczenia podstawowych jednostek miary.
3. Logika ładowania danych:
Podstawowe zadanie: Ładowanie stanów
To kluczowa i obowiązkowa część funkcjonalności.
Krytyczny wymóg dotyczący czyszczenia: Czyszczenie poprzednich stanów konkretnego dostawcy powinno odbywać się wyłącznie po pomyślnym odczytaniu i pełnej walidacji nowego pliku. Jeśli plik jest uszkodzony, pusty lub zmieniła się struktura kolumn — stare stany nie są usuwane, a system po prostu generuje błąd. Jest to konieczne, aby uniknąć przypadkowego zerowania bazy i zapewnienia dostępności danych.
Dodatkowe (opcjonalne) zadanie: Ładowanie cenników
Ta funkcjonalność będzie atutem, ale nie jest obowiązkowa na pierwszym etapie.
Ceny statyczne: Możliwość ładowania cen w trzy określone typy cen w 1C: "Zakupowa", "VIP cena", "Detaliczna".
Ceny obliczeniowe: Należy przewidzieć elastyczny mechanizm obliczania cen według formuł, który jest konfigurowany dla każdego dostawcy. Na przykład:
Opcja A: Bazową jest cena detaliczna z pliku, a zakupowa i VIP są obliczane jako procent od niej.
Opcja B: Bazową jest cena zakupowa, a detaliczna i VIP są obliczane za pomocą narzutu.
Musi być możliwość określenia bazy obliczenia i formuły dla każdego typu cen.
4. Przechowywanie i wyświetlanie danych w 1C:
Przechowywanie: Zaleca się przechowywanie danych w nowym Rejestrze informacji. Jednakże, jesteśmy otwarci na Wasze propozycje, jeśli widzicie bardziej optymalny architektoniczny sposób.
Wyświetlanie: Aktualne informacje o stanach powinny być wyświetlane w następujących interfejsach:
Formularz dokumentu "Zamówienie klienta".
Formularz "Dobór towarów".
Formularz karty asortymentu.
Ważne: Jeśli ten sam artykuł jest dostępny u kilku dostawców, w interfejsie powinno być wyraźnie widoczne saldo dla każdego z nich osobno (na przykład, osobny panel informacyjny, okno wyskakujące po najechaniu lub dodatkowe kolumny).
5. Automatyzacja:
Ładowanie powinno być wykonywane automatycznie za pomocą serwerowego zadania regulaminowego (lub innego bardziej optymalnego podejścia).
Powinna być możliwość skonfigurowania różnego czasu uruchamiania dla różnych dostawców (na przykład, 8:00, 10:00).
Obowiązkowo musi być możliwość ręcznego uruchomienia procesu ładowania.
System powiadomień: W przypadku wystąpienia krytycznych błędów podczas automatycznego ładowania (brak pliku w e-mailu, nieznany format, błąd odczytu), system powinien generować powiadomienia dla odpowiedzialnego menedżera (w formie zadania w 1C, wiadomości lub e-maila).
Wynik pracy:
Plik rozszerzenia (.cfe), lub pakiet instalacyjny gotowego rozwiązania.
Instrukcja użytkownika dotycząca konfiguracji i użytkowania.
P.S. Przykłady podobnych poprawek:
1) https://ingenum.ua/analiz-praysov-postavshikov-dlya-bas-ili-1c
2) https://pdk.com.ua/ua/features/dev/monitor_zagruzki-detail/
3)https://nct.ua/catalog/raboty_dlya_1s_8/Automatic-loading-of-price-lists-of-suppliers-and-the-balance-of-goods-from-suppliers/