Przenoszenie danych KSeF we współpracy z Comarch ERP XL
Od wersji 2025.2.0 podczas generowania dokumentów Faktura zakupu FZ, (A) Faktura zakupu (A)FZ i (A) Faktura zakupu uproszczona do Comarch ERP XL można przenosić na dokumenty dane dotyczące KSeF (numery i daty).
Dodanie nowych pól w ramach kontrolki typu Dokument ERP XL
W wersji 2025.2.0 w przypadku, gdy na definicji kontrolki typu Dokument ERP XL na zakładce „Dokument ERP XL” w polu „Typ” wybrano jeden z poniższych typów dokumentów:
Faktura zakupu
(A)Faktura zakupu
(A)Faktura zakupu uproszczona
wówczas w ramach nagłówka dokumentu zostaną dodane pola: „Numer KSeF” i „Data KSeF” – operator może ręcznie wypełnić pola lub zmapować wartości, może również modyfikować wartości, jeśli kontrolka nie jest w trybie tylko do odczytu.
Uwaga
Jeżeli dokument jest dowiązywany z systemu Comarch ERP XL, wówczas nowe pola „Numer KSeF” i „Data przyjęcia KSeF” będą w trybie tylko do odczytu, podobnie jak pozostałe pola dostępne w ramach kontrolki.
Pola „Numer KSeF” i „Data KSeF” zostały również dodane na definicji kontrolki typu Dokument ERP XL dla trzech wspomnianych typów dokumentów, na zakładce „Wartości mapowane”, w sekcji „Nagłówek” – operator może wybrać: dla pola „Numer KSeF” kontrolkę typu Tekst, z której ma zostać zmapowany numer oraz dla pola „Data KSeF” – kontrolkę typu Data i godzina, z której wartość ma zostać zmapowana. Mapowanie tych wartości nie jest konieczne, aby zapisać dokument i wygenerować dokument ERP XL.
Widok zakładki „Wartości mapowane” w sekcji „Nagłówek” na definicji kontrolki typu Dokument ERP XL, gdy wybrano typ „Faktura zakupu” – widoczne są nowe pola „Numer KSeF” i „Data KSeF”, dla których wybrano kontrolki, które mają zostać zmapowane
Formatka dokumentu ERP XL – zaznaczono nowe pola z przykładowymi wartościami
Nowe pola „Numer KSeF” i „Data KSeF” zostały również wprowadzone w aplikacji web oraz w aplikacjach mobilnych.
W ramach definicji predefiniowanych obiegów:
Faktura kosztowa (Nagłówek);
Faktura kosztowa (Elementy);
Faktura kosztowa (Waluty)
dodano:
kontrolkę typu Tekst „Numer KSeF” (identyfikator: NumerKSeF) – w ramach kontrolki można wprowadzić numer KSeF; zostanie on przekazany do Comarch ERP XL do kolumny KSF_Numer w tabeli KSeFDokumenty; wypełnienie kontrolki nie jest obowiązkowe do wygenerowania dokumentu ERP XL;
kontrolkę typu Data i godzina „Data przyjęcia KSeF” (identyfikator: DataKSeF) – w ramach kontrolki można wybrać date przyjęcia faktury KSeF; zostanie ona przekazany do Comarch ERP XL do kolumny KSF_TStampPrzyjecia w tabeli KSeFDokumenty; wypełnienie kontrolki nie jest obowiązkowe do wygenerowania dokumentu ERP XL;
kontrolkę typu Własna akcja „Sprawdź numer KSeF” (identyfikator: Sprawdz_numer_KSeF), która zawiera procedurę ERP, dzięki której możliwa jest weryfikacja, czy dokument z danym numerem KSeF w kontrolce „Numer KSeF” (identyfikator: NumerKSeF) jest już w Comarch ERP XL;
Definicja kontrolki „Sprawdź numer KSeF”
kontrolkę typu Komunikat (identyfikator: Msg2), która odpowiada za wyświetlenie komunikatu „Dokument o numerze KSeF [numer] znajduje się już w Comarch ERP XL” – jeśli dokument o numerze znajdującym się w kontrolce „Numer KSeF” (identyfikator: NumerKSeF) jest już w Comarch ERP XL
Definicja kontrolki typu Komunikat (identyfikator:Msg2)
kontrolkę typu Tekst „Status KSeF w ERP XL” (identyfikator: StatusKSeFXL), która zawiera informację zależną od wyniku weryfikacji za pomocą kontrolki „Sprawdź numer KSeF” – jeśli dokument znajduje się w Comarch ERP XL, w kontrolce „Status KSeF w ERP XL” widnieje napis „Dokument o takim numerze istnieje już w ERP”, jeśli zaś nie – „Dokument o takim numerze nie istnieje w ERP”.
Definicja kontrolki „Status KSeF w ERP XL”
Sekcja „KSeF” w ramach predefiniowanego obiegu „Faktura kosztowa (Elementy)” – gdy za pomocą kontrolki „Sprawdź numer KSeF” stwierdzono, że danego dokumentu nie ma w Comarch ERP XL
Sekcja „KSeF” w ramach predefiniowanego obiegu „Faktura kosztowa (Elementy)” wraz z komunikatem – gdy za pomocą kontrolki „Sprawdź numer KSeF” stwierdzono, że dany dokument znajduje się w Comarch ERP XL
Mapowanie danych do nowych kontrolek w predefiniowanych typach obiegów
Jeśli operator chce przenieść numer i datę faktury zakupu KSeF na dokument Comarch BPM w ramach punktu ACD typu „Import dokumentów zakupu z KSeF”, wówczas powinien na definicji punktu ACd, na zakładce „Kontrolki” wprowadzić następujące zapytania:
Dla kontrolki „Numer KSeF”:
select isnull (KSH_NumerReferencyjnyKSeF, ' ')
from do.KS_DocumentHeaders
join do.KS_Documents on ksd_id=KSH_DocumentId
where KSD_ID=@Id1@
Wprowadzanie zapytania SQL dla kontrolki „Numer KSeF”
Dla kontrolki „Data przyjęcia KSeF”:
select isnull (KSH_DataWytworzeniaFa, ' ')
from do.KS_DocumentHeaders
join do.KS_Documents on ksd_id=KSH_DocumentId
where KSD_ID=@Id1@
Wprowadzanie zapytania SQL dla kontrolki „Data przyjęcia KSeF”
Przenoszenie danych KSeF we współpracy z Comarch ERP Optima
Od wersji 2025.2.0 podczas generowania dokumentów FZ i FZV do Comarch ERP Optima można przenosić na dokumenty dane dotyczące KSeF (numery i daty).
W ramach definicji obiegu OptimaInvoiceGeneration.workflow dostępnej wraz z generatorem faktur zakupowych do Comarch ERP Optima dodano:
kontrolkę typu Własna akcja „Sprawdź numer KSeF” (identyfikator: Sprawdz_numer_KSeF), która zawiera procedurę ERP, dzięki której możliwa jest weryfikacja, czy dokument z danym numerem KSeF w kontrolce „Numer KSeF” (identyfikator: NumerKSeF) jest już w Comarch ERP Optima;
Definicja kontrolki „Sprawdź numer KSeF”
kontrolkę typu Komunikat (identyfikator: Msg2), która odpowiada za wyświetlenie komunikatu „Dokument o numerze KSeF [numer] znajduje się już w Comarch ERP Optima” – jeśli dokument o numerze znajdującym się w kontrolce „Numer KSeF” (identyfikator: NumerKSeF) jest już w Comarch ERP Optima
Definicja kontrolki typu Komunikat (identyfikator:Msg2)
kontrolkę typu Tekst „Status KSeF w Optimie” (identyfikator: StatusKSeFOptima), która zawiera informację zależną od wyniku weryfikacji za pomocą kontrolki „Sprawdź numer KSeF” – jeśli dokument znajduje się w Comarch ERP Optima, w kontrolce „Status KSeF w Optimie” widnieje napis „Dokument o takim numerze istnieje już w ERP”, jeśli zaś nie – „Dokument o takim numerze nie istnieje w ERP”.
Definicja kontrolki „Status KSeF w Optimie”
Nowe kontrolki na dokumencie, który ma zostać wygenerowany do Comarch ERP Optima jako faktura zakupu
W ramach definicji obiegów:
OptimaVatRegisterGeneration.workflow dostępnego wraz z generatorem dokumentów do rejestru VAT Comarch ERP Optima
OptimaVatRegisterGenerationAndAnalyticalDescription.workflow dostępnego wraz z generatorem dokumentów i opisu analitycznego do rejestru VAT Comarch ERP Optima
dodano następujące kontrolki, z których dane przekazywane są przez generator dokumentów Rejestr VAT do Comarch ERP Optima:
kontrolkę typu Data „Data przyjęcia KSeF” (identyfikator: DataKSeF)
kontrolkę typu Tekst „Numer KSeF” (identyfikator: NumerKSeF).
Dla tych kontrolek wprowadzono także odpowiednie klucze w pliku OptimaVatRegisterGenerator.exe.config (<add key=”KSeFNumberControl” value=”NumerKSeF” /> oraz <add key=”KSeFReceiptDateControl” value=”DataKSeF” />).
Kontrolki: „Data przyjęcia KSeF” „Numer KSeF” nie są wymagane do wygenerowania dokumentu w Comarch ERP Optima.
Dodatkowo na definicjach obiegów: OptimaVatRegisterGeneration.workflow i OptimaVatRegisterGenerationAndAnalyticalDescription.workflow wprowadzono następujące zmiany:
dodano kontrolkę typu Własna akcja z procedurą ERP akcja „Sprawdź numer KSeF” (identyfikator: Sprawdz_numer_KSeF), która sprawdza, czy dokument z danym numerem KSeF w kontrolce „Numer KSeF” (identyfikator: NumerKSeF) jest już w Comarch ERP Optima
dodano kontrolkę typu Komunikat (identyfikator: Msg2), która odpowiada za wyświetlenie komunikatu „Dokument o numerze KSeF [numer] znajduje się już w Comarch ERP Optima” – jeśli dokument o numerze znajdującym się w kontrolce „Numer KSeF” (identyfikator: NumerKSeF) jest już w Comarch ERP Optima
dodano kontrolkę typu Tekst „Status KSeF w Optimie” (identyfikator: StatusKSeFOptima), która zawiera informację zależną od wyniku weryfikacji za pomocą kontrolki „Sprawdź numer KSeF” – jeśli dokument znajduje się w Comarch ERP Optima, w kontrolce „Status KSeF w Optimie” widnieje napis „Dokument o takim numerze istnieje już w ERP”, jeśli zaś nie – „Dokument o takim numerze nie istnieje w ERP”.
Nowe kontrolki na dokumencie, który ma zostać wygenerowany do rejestru VAT
Generowanie faktury zakupu w Comarch ERP XL z wykorzystaniem skryptów C#
Aby przyklad działał poprawnie, konieczne jest spełnienie następujących warunków:
1. Instalacja systemu Comarch ERP XL na serwerze IIS
2.Poprawna konfiguracja współpracy pomiędzy systemami Comarch ERP XL oraz Comarch BPM (dawniej DMS)
3. Nadanie użytkownikowi IISUSER uprawnień do zapisu w katalogu bin\Scriptcs_bin oraz katalogu bin\.scriptcs_cache, które znajdują się w plikach aplikacji serwerowej Comarch BPM (dawniej DMS)
4.Skopiowanie biblioteki cdn_api[wersja].net.dll do katalogu bin\Scriptcs_bin, biblioteka znajduje się w katalogu, w którym zainstalowano Comarch ERP XL, w przykładach wykorzystano cdn_api20232.net.dll
5. Należy sprawdzić, czy w katalogu bin aplikacji web Comarch BPM (dawniej DMS) znajduje się plik cdn_sys.dll, jeżeli jest należy usunąć go z tej lokalizacji.
Skrypty C# zostały wykorzystane w kontrolkach typu Własna akcja i Komunikat. Skrypt dla kontrolki typu własna akcja utworzono na podstawie wzorca API XL
Wskazówka
Rekomendujemy wykorzystanie wzorca API XL jako elementu bazowego na potrzeby własnych rozwiązań.
Wzorzec API XL dostępny jest na indywidualnych stronach dla Partnerów w obszarze Comarch BPM\Przykłady\ERP XL: Wzorzec API XL
Konfiguracja typu obiegu
Przykład pokazuje, w jaki sposób administrator Comarch BPM (dawniej DMS) może skonfigurować definicję obiegu, aby generować dokument „Faktura zakupu” do systemu Comarch ERP XL, bez pomocy kontrolki typu Dokument ERP XL. W tym celu należy:
1.dodać nowy typ obiegu w ramach zakladki [Definicje obiegów dokumentów]
2.nadać nazwę typowi obiegu – np. Generowanie faktury zakupu i prefix – np. GEN
3.nadać danemu administratorowi uprawnienie do inicjowania dokumentuna zakładce „Ustawienia obiegu” w sekcji „Uprawnienia do inicjowania dokumentu”
Nadawanie uprawniń do inicjowania dokumentu dla administratora – przykład
4. W ramach zakładki „Schemat obiegu” utworzyć etap początkowy „Generuj dokument” i etap końcowy „Koniec”oraz dodać uprawnienie dla danego administratora do etapów.
Dodawanie etapów i uprawnień
5. W ramach zakładki „Karta obiegu” dodać następujące kontrolki:
AKontrolka typu Kontrahent – „Kontrahent” (identyfikator: Kontrahent)
Kontrolka „Kontrahent”
BKontrolka typu Dane tabelaryczne – „Elementy”(identyfikator: Elementy) – w ramach kontrolki należy:
w zakładce „Listy” dodać następujące listy:
„Jm”z wartością „Jednostki miary” w polu „Inicjowanie”
„VAT”z wartością „Stawki VAT” w polu „Inicjowanie”
Kontrolka „Elementy”, zakładka „Listy”
w zakładce „Ogólne” dodać następujące kolumny:
kolumna typu Towar – „Towar”(identyfikator: Towar)
kolumna typu Liczba stałoprzecinkowa – „Ilość”(identyfikator: Ilosc)
kolumna typu Lista – „Jm.” (identyfikator: Jm) z wartością „Jm”wybraną w polu „Listy”
kolumna typu Lista – „VAT” (identyfikator: VAT) z wartością „VAT” wybraną w polu „Listy”
kolumna typu Liczba stałoprzecinkowa – „Cena netto”(identyfikator: CenaNetto)
kolumna typu Liczba stałoprzecinkowa – „Cena brutto”(identyfikator: CenaBrutto)
kolumna typu Liczba stałoprzecinkowa – „Wartość Netto”(identyfikator: WartoscNetto)
kolumna typu Liczba stałoprzecinkowa – „Wartość Brutto” (identyfikator: WartoscBrutto)
Kontrolka „Elementy”, zakładka „Ogólne” – widok kolumn 1-3
Kontrolka „Elementy”, zakladka „Ogólne” – widok kolumn 4-8
w zakładce „Inicjowanie wartości” :
w ramach pola „Kontrolki powiązane” kliknąć przycisk „Dodaj” i wybrac kontrolkę „Elementy”
w ramach pola „Wzór na wartość” wybrać opcję „SQL OD”, kliknąć „Ustaw”, a następnie wprowadzić następujące zapytanie:
if @^InitSenderControlName@ = 'Elementy'
Begin
declare @vat decimal(22,4) = 0.0
declare @netto decimal (22,4) = 0.0
declare @brutto decimal (22,4) = 0.0
declare @ilosc decimal (22,4) = 0.0
if @Elementy_Column@ in (2,4,5)
Begin
select @netto = CenaNetto, @ilosc = Ilosc from @Elementy@
where POS = @Elementy_Row@
select @vat = case
when VAT = 1 then 23
when VAT = 2 then 8
when VAT = 3 then 0
when VAT = 4 then 0
when VAT = 5 then 0
when VAT = 6 then 7
when VAT = 7 then 5
else 0 end
from @Elementy@ where POS = @Elementy_Row@
set @brutto = ((@netto*@vat)/100)+@netto
update @Elementy@ set CenaBrutto = @brutto, WartoscBrutto = @ilosc * @brutto,
WartoscNetto = @ilosc * @netto where POS = @Elementy_Row@
select * from @Elementy@
End
if @Elementy_Column@ = -1
Begin
update @Elementy@ set Ilosc = 1, JM = 1, VAT = 1
where POS = @Elementy_Row@
select * from @Elementy@
End
End
Wprowadzone zapytanie należy zapisać, klikając w przycisk „Zapisz” w oknie „Wyrażenie kontrolki”
Ckontrolka typu Własna akcja – „Generuj dokument” (identyfikator: GenerujDokument) – w ramach definicji kontrolki należy kliknąć w link „Ustaw” w polu „C# Script”, następnie w otwartym oknie „Skrypt C#” w polu „Miejsce wykonania skryptu” wybrać „Proces (exe)” (jeśli istnieje opcja wyboru) i wprowadzić następujący kod:
using System.Threading;
using System.Runtime.InteropServices;
using cdn_api;
static ThreadLocal<bool> threadToClarionAttached = new ThreadLocal<bool>(() => false);
[DllImport("ClaRUN.dll")]
private static extern void AttachThreadToClarion(int flag);
public void AttachThreadToClarion()
{
try
{
if (!threadToClarionAttached.Value)
{
AttachThreadToClarion(1); // C8
threadToClarionAttached.Value = true;
}
}
catch (DllNotFoundException ex)
{
// -----------------------------------------------------------------
// Tu przekaż informacje o statusie działania skryptu
// -----------------------------------------------------------------
Globals.MainFrame.GenerujDokument_CSSCRIPT.Text = ex.Message;
}
}
AttachThreadToClarion();
int _lSesjaID = 0;
string blad = "";
try
{
int documentId = 0;
int wersjaApi = odpowiedniawersjaapi;
var loginInfo = new XLLoginInfo_odpowiedniawersjaapi()
{
Wersja = odpowiedniawersjaapi,
ProgramID = "Comarch BPM",
Winieta = -1,
TrybWsadowy = 1,
Baza = "nazwafirmy",
OpeIdent = "Login",
OpeHaslo = "hasło",
SerwerKlucza = @"serwerklucza"
};
var XLLoginResult = cdn_api.cdn_api.XLLogin(loginInfo, ref _lSesjaID);
if (XLLoginResult != 0)
{
blad = "Funkcja XLLogin zwróciła bład nr: " + XLLoginResult;
throw new Exception();
}
// -----------------------------------------------------------------
// Tu dodaj kod obsługi API
// -----------------------------------------------------------------
var dokumentNagInfo = new XLDokumentNagInfo_odpowiedniawersjaapi
{
Wersja = odpowiedniawersjaapi,
Typ = 1521,//FZ
KntTyp = 32,
KntNumer = Globals.MainFrame.Kontrahent.Id ?? 0, // Pobierz GidNumer kontrahenta
RodzajZakupu = 1,
//Avista = 1
};
var XLNowyDokumentResult = cdn_api.cdn_api.XLNowyDokument (_lSesjaID, ref documentId, dokumentNagInfo);
if (XLNowyDokumentResult != 0)
{
blad = "Funkcja XLNowyDokument zwróciła bład nr: " + XLNowyDokumentResult;
throw new Exception();
}
//var element;
for (int i=0; i<Globals.MainFrame.Elementy.RowCount; i++)
{
var element = new XLDokumentElemInfo_odpowiedniawersjaapi();
element.Wersja = odpowiedniawersjaapi;
element.TwrTyp = 16;
element.Ilosc = Globals.MainFrame.Elementy.Items[i].Ilosc.Value.ToString();
element.TwrNumer = Globals.MainFrame.Elementy.Items[i].Towar.Id;
element.JmZ = Globals.MainFrame.Elementy.Items[i].Jm.Text;
element.Cena = Globals.MainFrame.Elementy.Items[i].CenaNetto.Value.ToString();
var XLDodajPozycjeResult = cdn_api.cdn_api.XLDodajPozycje(documentId, element);
if (XLDodajPozycjeResult != 0)
{
blad = "Funkcja XLDodajPozycje zwróciła bład nr: " + XLDodajPozycjeResult;
throw new Exception();
}
}
var zamkniecieDokumentuInfo = new XLZamkniecieDokumentuInfo_odpowiedniawersjaapi
{
Wersja = odpowiedniawersjaapi,
Tryb = 1
};
var XLZamknijDokumentResult = cdn_api.cdn_api.XLZamknijDokument(documentId, zamkniecieDokumentuInfo);
if (XLZamknijDokumentResult != 0)
{
blad = "Funkcja XLZamknijDokument zwróciła bład nr: " + XLZamknijDokumentResult;
throw new Exception();
}
}
catch (Exception ex)
{
if (blad == "")
blad = "Nieokreślony błąd: " + ex.Message;
}
finally
{
var XLLogoutResult = cdn_api.cdn_api.XLLogout(_lSesjaID);
if (XLLogoutResult != 0)
{
blad = "Funkcja XLLogout zwróciła bład nr: " + XLLogoutResult;
}
// -----------------------------------------------------------------
// Tu przekaż informacje o statusie działania skryptu
// -----------------------------------------------------------------
if ( blad == "")
Globals.MainFrame.GenerujDokument_CSSCRIPT.Text = "Operacja zakończona sukcesem.";
else
Globals.MainFrame.GenerujDokument_CSSCRIPT.Text = blad;
}
gdzie należy zmienić następujące wartości:
odpowiedniawersjaapi – wersja API ERP XL zgodna z wersją pliku cdn_api[wersja].net.dll
nazwafirmy – nazwa Firmy Comarch ERP XL (nazwę firmy można sprawdzić w managerze baz Comarch ERP XL)
Login – login operatora Comarch ERP XL
hasło – hasło operatora Comarch ERP XL
serwerklucza – serwer klucza licencji
Po wprowadzeniu kodu należy nacisnąć przycisk[Kompiluj i zapisz], a następnie, gdy w dolnej części okna zostanie wyświetlony napis „Kompilacja skryptu zakończyła się sukcesem” nacisnąć przycisk „Zamknij”.
Widok okna „Skrypt C#” po skompilowaniu skryptu
DKontrolka typu Komunikat – należy w ramach pola:
„Nazwa (identyfikator)” wprowadzić nazwę „Msg1”
„Tytuł” wprowadzić tekst „Status wykonania API ERP XL”
„Kontrolki powiązane” kliknąć w link „Dodaj” i wybrać kontrolkę „Generuj dokument”
„Wzór na wartość” wybrać wartość „C# Script”, kliknąć „Ustaw”, a następnie wprowadzić następujący kod:
Po wprowadzeniu kodu należy nacisnąć przycisk[Kompiluj i zapisz], a następnie, gdy w dolnej części okna zostanie wyświetlony napis „Kompilacja skryptu zakończyła się sukcesem” nacisnąć przycisk „Zamknij”.
Widok okna „Skrypt C#” po skompilowaniu skryptu
6.zapisać typ obiegu za pomocą przycisku [Zapisz]
Zapisywanie typu obiegu
Generowanie dokumentu FZ do Comarch ERP XL – jak działa
Po zdefiniowaniu typu obiegu operator przechodzi na zakładkę [Dokumenty], klika na typ obiegu „Generowanie faktury zakupu” i naciska przycisk [Dodaj]. Następnie kolejno:
1.zapisuje nowy dokument, naciskając [Zapisz]
2.wybiera kontrahenta w ramach kontrolki „Kontrahent”
3. w ramach kontrolki „Elementy” dodaje towar w kolumnie „Towar”, wybiera opcję w kolumnach „Jm.” i „VAT” oraz wpisuje wartość w kolumnie „Cena netto”(jeśli poprawnie skonfigurowano obieg, wówczas kolumny „Cena brutto”, „Wartość Netto” i „Wartość Brutto” powinny zostać uzupełnione automatycznie)
Uwaga
Należy zwrócić uwagę, aby wartość wybrana w kolumnie „VAT” dla danego towaru była zgodna ze stawką przypisaną do tego towaru w Comarch ERP XL.
4. naciska przycisk „Generuj dokument”– wówczas następuje generowanie dokumentu – poniżej przycisku widoczne są poruszające się punkty
5.Jeśli generowanie dokumentu zakończyło się powodzeniem, wówczas na środku ekranu wyświetlany jest następujący komunikat:
Komunikat wyświetlany, jeśli generowanie dokumentu zakończyło się powodzeniem
Film
Aby zobaczyć przebieg generowania dokumentu do Comarch ERP XL, kliknij w poniższy film:
Wygenerowany dokument jest już widoczny w Comarch ERP XL:
Dokument wygenerowany z Comarch BPM (dawniej DMS) do Comarch ERP XL
Rozpoczynasz pracę z Comarch BPM (dawniej DMS) i chcesz dowiedzieć się, jak korzystać z programu? A może masz już podstawową wiedzę o Comarch BPM (dawniej DMS) i chcesz dowiedzieć się więcej?
Czy przy tworzeniu nowego folderu w Comarch BPM Repozytorium wymagane jest dodanie nowego administratora?
Odpowiedź na to pytanie jest zależna od lokalizacji, w której ma zostać dodany nowy folder.
W Comarch BPM (dawniej DMS) Repozytorium dostępne są dwa rodzaje folderów:
Foldery, którym przypisano administratora(obszary)
Foldery, którym nie przypisano administratora (występują w formie folderów podrzędnych)
W ramach katalogu głównego „Repozytorium” jest możliwe dodawanie tylko obszarów – folderów z przypisanym administratorem, dlatego w polu „Wybierz nowego administratora” konieczne jest znalezienie w wyszukiwarce pracownika lub pracowników, którzy mają zostać administratorami nowego folderu. W ramach katalogu głównego nie jest możliwe dodanie folderów podrzędnych – a zatem w katalogu głównym „Repozytorium” dodanie nowego administratora dla folderu (obszaru) jest wymagane.
Dla wszystkich folderów podrzędnych dodawanie nowego administratora nie jest konieczne.
W jaki sposób można zaktualizować Comarch BPM do nowych wersji, jeśli w tym momencie praca odbywa się na wersji posiadającej jedynie starą aplikację webową?
Jeśli w środowisku zainstalowana jest starsza wersja Comarch BPM (dawniej DMS), jeszcze sprzed wprowadzenia nowej aplikacji webowej, należy przeprowadzić proces instalacji, a nie aktualizacji.
Instalator poprosi o utworzenie dwóch nowych aplikacji, z czego jedną będzie aplikacja serwerowa, a drugą nowa webowa. Następnie trzeba będzie podpiąć bazy danych BPM (dawniej DMS) i współpracującego systemu ERP. Dokumenty w Comarch BPM (dawniej DMS) zapisywane są w bazach danych, dlatego przy poprawnym podpięciu bazy wszystkie dotychczasowe typy obiegu, dokumenty i konfiguracja zostaną przeniesione do nowej wersji.
Rozpoczynasz pracę z Comarch BPM (dawniej DMS) i chcesz dowiedzieć się, jak korzystać z programu? A może masz już podstawową wiedzę o Comarch BPM (dawniej DMS) i chcesz dowiedzieć się więcej?
Czy w przypadku współpracy BPM z Optimą jest możliwość dodania dodatkowych pól lub dokumentów do generatora, tak aby przenieść je do Optimy?
Jeśli COM-y Optimy obsługują odpowiednie pola i typy dokumentów to istnieje możliwość zmiany kodu generatora, jego rekompilacji i podpięcia do przycisku własnej akcji, jednak takie rozwiązania nie są przez nas wspierane i błędy z nimi związane nie będą poprawiane.
Informacji dotyczących możliwości COM-ów należy szukać w dokumentacji lub poprzez kontakt z asystą Optimy.
Rozpoczynasz pracę z Comarch BPM (dawniej DMS) i chcesz dowiedzieć się, jak korzystać z programu? A może masz już podstawową wiedzę o Comarch BPM (dawniej DMS) i chcesz dowiedzieć się więcej?
Podczas instalacji Comarch BPM przy użyciu Instalatora, w kroku Uruchom skrypty dla bazy ERP XL występuje błąd „Nie udało się wykonać skryptów SQL na wybranej bazie. Execution exception in script pGetDocumentsByNumbers.sql: Invalid column name ‘BON_OkrSymbol’.”
Okno „Baza danych Comarch ERP XL” z informacja o błędzie
Powyższy błąd spowodowany jest odwołaniem w skrypcie do kolumny z komunikatu, która nie występuje w starszych wersjach ERP XL.
W takim wypadku rozwiązaniem może być aktualizacja ERP XL lub wykonanie instalacji BPM (dawniej DMS) w trybie Standalone i ręczne uruchomienie skryptów na bazie ERP XL, po wcześniejszym usunięciu linii kodu odwołującej się do nieistniejącej kolumny.
Rozpoczynasz pracę z Comarch BPM (dawniej DMS) i chcesz dowiedzieć się, jak korzystać z programu? A może masz już podstawową wiedzę o Comarch BPM (dawniej DMS) i chcesz dowiedzieć się więcej?
Podczas instalacji Comarch BPM przy użyciu Instalatora, w kroku Uruchom skrypty dla bazy BPM występuje błąd ”Nie udało się wykonać skryptów SQL na wybranej bazie. Execution exception in script pRenameReservableResourceGroup.sql: Incorrect syntax near the keyword ‘null’.”
Okno „Baza danych Comarch BPM” z informacją o błędzie
Powyższy błąd związany jest ze składnią wspomnianej procedury, która nie jest wspierana w starszych wersjach SQL SERVER. W pierwszej kolejności należy zweryfikować, czy zostały spełnione wymagania sprzętowe dla instalowanej wersji BPM (dawniej DMS) .
Rozpoczynasz pracę z Comarch BPM (dawniej DMS) i chcesz dowiedzieć się, jak korzystać z programu? A może masz już podstawową wiedzę o Comarch BPM (dawniej DMS) i chcesz dowiedzieć się więcej?
Czy można wymusić daną kolejność kolumn u wszystkich operatorów Comarch BPM i odebrać im możliwość modyfikacji kolejności? Czy można wyłączyć możliwość modyfikacji przez użytkowników?
Nie ma takiej możliwości, ponieważ zarówno w wersji webowej jak i desktopowej każdy operator domyślnie ma możliwość konfiguracji wg. własnych preferencji. Jest to możliwe poprzez panel sterowania w aplikacji stacjonarnej lub w webie poprzez ikonę ołówka, wskazanego na zrzucie. Tych funkcji nie da się wyłączyć.
Rozpoczynasz pracę z Comarch BPM (dawniej DMS) i chcesz dowiedzieć się, jak korzystać z programu? A może masz już podstawową wiedzę o Comarch BPM (dawniej DMS) i chcesz dowiedzieć się więcej?
Czy system BPM jest w pełni kompatybilny z przeglądarką Safari?
Na ten moment system BPM (dawniej DMS) nie jest w pełni kompatybilny z przeglądarką Safari.
Aby korzystać z wersji webowej aplikacji BPM (dawniej DMS), zalecamy korzystanie z następujących przeglądarek: Microsoft Edge, Google Chrome, Mozilla Firefox, Opera. Te przeglądarki gwarantują pełną funkcjonalność i optymalną wydajność modułu.
Rozpoczynasz pracę z Comarch BPM (dawniej DMS) i chcesz dowiedzieć się, jak korzystać z programu? A może masz już podstawową wiedzę o Comarch BPM (dawniej DMS) i chcesz dowiedzieć się więcej?