Cegid PMI

Cześć;

Wbrew mojej woli przyjęliśmy oprogramowanie CEGID Maunfacturing PMI (wersje 16-20), ale nie mamy PDM ani ERP, które połączyłoby nasze osiągnięcia Solidworks z zakupami i zamówieniami na PMI...
Dlatego próbuję stworzyć interfejs pośredni między naszymi dwoma programami za pomocą narzędzi VBA/Excel/SmartBom (visiativ).
Ogólnie rzecz biorąc, nie radzę sobie zbyt źle, ale natrafiam na kość:
Staram się wywołać " Zamówienia zakupu" wybranego przedmiotu z mojego interfejsu:
Udaje mi się wyświetlić arkusz przedmiotów:

Private Const CHEMIN_CEGID As String = "C:\Program Files (x86)\Cegid\ManufacturingPMI\ManufacturingPMI.exe"
Private Const CEGID_SOC As String = "100"           ' numero de societe
Private Const CEGID_USER As String = "****"         ' code utilisateur
Private Const CEGID_BASE As String = "PMI"          ' nom de la base
Private Const CEGID_CC_DEFAUT As String = ""     ' CC envoye si l'article n'a pas de complementaire ("" = pas de CC)
Private Const CEGID_CC_ARTICLE As Boolean = True    ' True : CC = complementaire de l'article ; False : toujours CEGID_CC_DEFAUT
Private Const CEGID_MODE_TEST As Boolean = False    ' True : affiche la commande au lieu de la lancer

' Bouton 1 - fiche article. VALIDE : PROG=ARTICLE affiche la fiche avec son code.
Private Const CEGID_PROG_FICHE As String = "ARTICLE"
Private Const CEGID_MODELE_FICHE As String = "ARTICLE={ARTICLE} CC={CC} APPELANT=COMMANDE"

Ale jeśli chodzi o arkusz "Zamówienie dostawcy"... Nic, nic, wallooo.
Skąpe informacje, które udało mi się znaleźć na forum CEGID (brak nowych wiadomości od 6 lat), znajdują się w załączonym pliku pdf, ale tam, po raz kolejny, nie mogę znaleźć tego, czego szukam.
Cegid-PMI-Liste-des-appel-Programme.pdf (524,2 KB)

Rozumiem, że celuję w niszowym rynku w tej konkretnej sprawie, ale jeśli ktoś kiedykolwiek napotka błysk geniuszu na ten temat lub zetknie się z podobną sytuacją (przyznaję, że to mało prawdopodobny przypadek), chętnie porozmawiam o tym temacie.

Pozdrawiam.

Naprawdę bardzo niszowe!
Pytając Copilota, oto proponowane odpowiedzi. Jeśli nic nie działa, bezpośredni dostęp do bazy SQL wydaje się najprostszy.

Ślady Copilota:

Tak, mam dość poważny trop.

Patrząc na program PDF Cegid-PMI-Call-List-Program, nie widzę żadnego programu, który pozwalałby bezpośrednio otworzyć zakładkę " Zamówienia zakupu " z karty przedmiotu. Myślę, że właśnie dlatego Twoje połączenie działa dla karty przedmiotu, a nie dla powiązanych zamówień. [Cegid-PMI-... gramme.pdf | PDF]

Co można znaleźć w dokumentacji

Do artykułów:

Tekst prosty

PROG=MAJART

ARTYKUŁ=xxx

CC=xxx

CALLER=COMMAND

lub

Tekst prosty

PROG=ARTYKUŁ

ARTYKUŁ=xxx

CC=xxx

CALLER=COMMAND

(zgodnie z twoją aktualną personalizacją) [Cegid-PMI-... gramme.pdf | PDF]

Dla dostawców:

Tekst prosty

PROG=DOSTARCZONE

ACCOUNT=xxx

CALLER=TELEPH

lub

Tekst prosty

PROG=AKTUALIZACJA/F

ACCOUNT=xxx

[Cegid-PMI-... gramme.pdf | PDF]

Dla wyszukiwań kolejności znajdujemy na przykład:

Tekst prosty

PROG=TABCDE01-CDECLI

ale tylko przy zamówieniach sprzedażowych. [Cegid-PMI-... gramme.pdf | PDF]


Co sprawia, że myślę, że szukasz złego PROG

Na pełnej liście programów znajdują się:

Z drugiej strony dokumentacja pokazuje, że wiele okien nie jest bezpośrednio wywoływalnych i przechodzi przez wewnętrzne ekrany pośrednie. CEGID często kodował zakładki jako podokna, a nie jako samodzielne programy.

Możliwe jest więc, że:

  1. Okno " Zamówienia zakupu " przedmiotu nie jest widoczne na linii zamówienia .
  2. jest dostępna dopiero po otwarciu arkusza przedmiotów;
  3. wymaga to nieudokumentowanego wewnętrznego połączenia MCU.

Co bym przetestował

Test 1: Rozpocznij konsultacje z dostawcą

Spróbuj:

BAT

PACKPMI PROG=UDOSTĘPNIONE KONTO=XXXX SOC=100 UŻYTKOWNIK=JA

lub

BAT

PACKPMI PROG=SHIFT/F KONTO=XXXX SOC=100 USER=ME

jeśli znasz powiązanego dostawcę. [Cegid-PMI-... gramme.pdf | PDF]


Test 2: Wyszukaj pliki PMI

Na stacji roboczej, na której zainstalowane jest PMI, wyszukaj w:

Tekst prosty

*. MCU

*. WDL

*. WDW

*. WDP

Kanały:

Tekst prosty

CDEFOU

FOURN

ZAKUP

APPRO

COMFU

TABCDE01

Często programiści PMI zostawiali nazwy programów w skryptach.


Test 3: Szpieg wewnętrznego połączenia

Ponieważ już otwierasz stronę z artykułem, najskuteczniejszym sposobem jest prawdopodobnie:

  • otwórz artykuł z VBA;
  • Wyślij skrót:

VisualBasic

SendKeys " %A "

SendKeys " F "

(według skrótów PMI)

lub

VisualBasic

SendKeys " ^{F5} "

Jeśli zakładka Poleceń jest dostępna, Klawiatura.

Trochę szorstkie, ale często bardziej wiarygodne niż próba znalezienia ukrytego PROG.


Trop, który uważam za najbardziej interesujący

W PDF-ie widzimy:

Tekst prosty

Prog: DOSTĘPNY

Wstępna selekcja:

ARTYKUŁ=xxxxxx

CC=xx

[Cegid-PMI-... gramme.pdf | PDF]

Jednak w PMI okno " Dostępne " często pozwala wyświetlić:

  • dostawcy,
  • Otwarte zamówienia,
  • przyjęcia,
  • stock,
  • potrzeb.

Sprawdzę, czy to okno nie zawiera już informacji, których szukasz.

Przykład:

BAT

PACKPMI PROG=DOSTĘPNY ARTYKUŁ=MÓJARTYKUŁ CC=MYCC SOC=100 UŻYTKOWNIK=JA

[Cegid-PMI-... gramme.pdf | PDF]


Gdyby to był mój projekt SmartBom / Excel

Osobiście nawet nie próbowałbym już otwierać okna PMI.

Przeczytałbym bezpośrednio tabele PMI SQL:

  • Artykuł
  • Linia zamówień
  • Zamówienie

przez ADO z Excela.

Następnie otrzymujesz bezpośrednio:

Dostawca zamówienia Numer Ilości, Oczekiwana data

bez polegania na oknie CEGID.

Ponieważ jesteś już w VBA/Excel/SmartBom, często jest to znacznie bardziej zaawansowane.

A tak przy okazji, czy wiesz, na jakiej podstawie opiera się Twój PMI 16,20?

  • SQL Server?
  • PostgreSQL?
  • Wszechobecne?
  • Inny?

Jeśli możesz podać dokładną nazwę menu PMI, które ręcznie otwierasz, aby zobaczyć zamówienia na dany produkt, prawdopodobnie znajdę odpowiednie PROG= lub ustalę, czy nie jest ono widoczne w zewnętrznych połączeniach.

Witaj @Maclane ,

Używamy też obu.

Z drugiej strony nie rozumiem sensu iść dalej niż importować listę materiałów z Solidworks → Cegid (na tym się zatrzymaliśmy po naszej stronie).
Odbywa się to poprzez eksport/import .csv w naszym kraju, ponieważ Cegid nie utrzymuje już młyna Solidworks->Cegid (który założyli około 2005-2010).

Jeśli możesz rozwinąć, co chcesz zrobić, może będę zainteresowany.

Cegid zarządza co najmniej 2 bazami danych: bazą danych pozycji/listy materiałów oraz tymi, które zostały uruchomione (duplikacja wykazu materiałów w danym czasie). Nie jestem ekspertem w bazach danych Cegid, ale mam kolegów bardziej wyspecjalizowanych w tej dziedzinie.
Zazwyczaj zamówienia powinny być zarządzane po stronie startowej (ponieważ powiązane z transakcją/lotem) lub nawet w innej bazie danych/tabeli.

Dziękuję za udział @sbadenis :grin: choć jestem zaskoczony, że " Copilot " odpowiada na tę " kwalię ", to ja zrezygnowałem z jego używania, gdy nie było w stanie odpowiedzieć na produkty Microsoftu...

Nie pomyślałem, żeby spróbować Sendkey, to ciekawy utwór.

Na pytanie, dlaczego nie zaatakować bezpośrednio bazy SQL, to dlatego, że po prostu nie mam do niej dostępu (no tak, to bałagan!)

Dla twojej informacji, dokładne nazwy menu PMI to:
Dla karty przedmiotu => " \ARTYKUŁ " (okno C2021art) (tę łatwo znaleźć")
Do zamówienia zakupu (w tej części) => \ARTILCLE\CDEFOU (okno C2163DOC)

@froussel

Celem jest łatwiejsza kontrola listy istniejących artykułów za pomocą formularza użytkownika Excel, który wskazuje eksport *.csv naszych artykułów + External References + Oznaczone arkusze 1 i 2..., bez ograniczeń ze strony wyświetlania i wolności PMI.
Ogólnie rzecz biorąc, ułatwia to tworzenie przedmiotów, jednocześnie zapewniając, że nie istnieją one już w PMI i/lub nie znajdą istniejącego elementu o podobnych funkcjach. (Ustaliliśmy ścisłe zasady kodowania.)

Widząc, że tego typu wyszukiwanie przez Excel daje dobre wyniki, moi przełożeni zawsze proszą o więcej, więc teraz, oprócz bezpośredniej konsultacji z tego interfejsu (Excel) arkuszy Artilcles PMI, chcą uzyskać dostęp do zamówień dostawców i Bóg wie co w przyszłości...

W przeciwnym razie eksport ze Solidworks, to też dzieje się miękko przez SmartBom bills of materials + plik TXT + import...

Jeśli chodzi o tartak Solidworks->Cegid (który stworzyli około 2005-2010)... Myślałem, że w ogóle nie działał dobrze... szkoda.

… Zagłębiam się w przekazywane informacje i udzielam opinii zainteresowanym... :sweat_smile: