Forum Użytkownikow Subiekt GT
InsERT GT => Dodatki - zestawienia - sfera => Wątek zaczęty przez: rafus202 w Maj 22, 2019, 11:04:15
-
Witam, chcę utworzyć dodatkowy program który będzie łączyć się z subiektem i automatycznie modyfikować pola w "przesunięciu międzymagazynowym" pytanie brzmi jak odnieść się do zacznaczonych na screenie pól.
Poszukuję przykładu jak edytować oznaczone wartości.
-
Jest w helpie:
obiekt.PoleWlasne("Nazwa_pola") = Wartosc_pola
-
Super, ostatnie pytanie jak odwołać się do określonego przesunięcia magazynowego np. o numerze "123"?
-
RTFM - Obiekt SuDokument, przykład nr 1
-
Super, ostatnie pytanie jak odwołać się do określonego przesunięcia magazynowego np. o numerze "123"?
Zapewne jakoś tak: Dokumenty.Wczytaj("MM 123/MAG/2019") - ale to też jest w helpie...
-
Jaka jest wymagana referencja / biblioteka do uruchomienia subiekta w C#? Pracuje na Visual Basic ( Windows Form )
Oraz czy posiada ktoś gotowy kod umożliwiający połączenie się z subiektem właśnie w C#?
-
Uparcie nie korzystasz z pomocy do programu - odpowiedź znajduje się w drugim rozdziale "Pierwsze kroki w Sferze dla Subiekta GT", gdzie pierwszym jest "Wstęp"... Nie korzystasz z informacji zgromadzonych na forum: http://www.forumsubiekta.pl/dodatki-zestawienia/subeiekt-gt-sfera/msg20510/#msg20510 (http://www.forumsubiekta.pl/dodatki-zestawienia/subeiekt-gt-sfera/msg20510/#msg20510)...
-
Problem w tym ,że nie potrafię przełożyć VBS na C# i proszę o jeden przykład wczytania dokumentu właśnie w C#
-
InsERT.GT gt = new InsERT.GT();
InsERT.Subiekt sgt;
gt.Produkt = (InsERT.ProduktEnum.gtaProduktSubiekt);
gt.Serwer = "HOST BAZY SQL";
gt.Baza = "PODMIOT";
gt.Autentykacja = (InsERT.AutentykacjaEnum.gtaAutentykacjaMieszana);
gt.Uzytkownik = "sa";
gt.UzytkownikHaslo = "";
gt.Operator = "szef";
gt.OperatorHaslo = "";
sgt = (InsERT.Subiekt)gt.Uruchom((Int32)InsERT.UruchomDopasujEnum.gtaUruchomDopasuj, (Int32)InsERT.UruchomEnum.gtaUruchomWTle);
sgt.MagazynId = 1;
InsERT.SuDokument dok = sgt.Dokumenty.Wczytaj("MM 123/MAG/2019");
zmienna dok to twój wczytany dokument
Jaka jest wymagana referencja / biblioteka do uruchomienia subiekta w C#?
w projekcie klikasz prawym na referencje => dodaj => w zakładce COM w wyszukiwarce wpisujesz "insert". Powinno znaleźć "InsERT dla aplikacji", zaznaczasz i gotowe.
Oczywiście żeby to działało musisz mieć na tym komputerze zainstalowanego subiekta
-
A jeśli chcesz podać id dokumentu, a nie nr to... w zasadzie tak samo ;)
Subiekt sub = uruchomSubiekta();
int idRW = podajIdRw();
SuDokument Rw = sub.SuDokumentyManager.WczytajDokument(idRW);
-
InsERT.SuDokument dok = sgt.Dokumenty.Wczytaj("MM 8853/MSK/2019");
dok.PoleWlasne["XXXX"] = "TEST";
dok.Zapisz;
W jaki sposób zapisać wartość w polu własnym?
-
Dokładnie tak, jak zacytowałeś.
-
Nie dodałem () dzieki za pomoc!
-
No tak, tak wygląda wywołanie metody w języku C#, ja nie zwracam uwagi na takie drobiazgi przy czytaniu kodu na forum, zwłaszcza kiedy ktoś nie podaje komunikatu błędu, który otrzymuje - pomagaj sobie na przyszłość.
-
Ostatnie szybkie pytanie, czas mnie goni wybaczcie, w załączniku przedstawiam kolumny do których chcę dodawać wartości, jak nazywają się te pola ( gdzie znajdę to w dokumentacji? )
-
Jak zaczytać wszystkie elementy su dokumentu? Nie mogę znaleźć w dokumentacji.
-
Albo nie widzę haczyka w tym pytaniu, albo nie wiem o co pytasz.
No... SuDokument, jak każdy obiekt, ma atrybuty i metody.
Wczytujasz dokument i masz wszystko co Sfera udostępnia.
W helpie pod SuDokument masz 6 przykładów oraz tabelę składowych obiektu.
Czego nie możesz znaleźć?
-
Chcę skopiować wszystkie wartości do nowego magazynu, jednak nie mogę odnaleźć w dokumentacji informacji w jaki sposób odwołać się do atrybutu ( Symbol, Nazwa ... )
Tabela w załaczniku
-
Chcę skopiować wszystkie wartości do nowego magazynu, jednak nie mogę odnaleźć w dokumentacji informacji w jaki sposób odwołać się do atrybutu ( Symbol, Nazwa ... )
Tabela w załaczniku
No przecież to jest dokładnie to co w przykładzie nr 1 (tyle że w VB a nie w C#) :o
Set oDokum = oSubGT.Dokumenty.Wczytaj("FS 28/MAG/2005")
Dim oPoz As InsERT.SuPozycja
Dim i As Integer
For i = 1 To oDokum.Pozycje.Liczba
Set oPoz = oDokum.Pozycje.Element(i)
Debug.Print oPoz.TowarNazwa
Żeby się dostać do symbolu (rozumiem że chodzi o symbol towaru) musisz wykorzystać kolekcję SuPozycje.
Mniej więcej tak (to nie jest fragment kodu, napisałem to z palca, więc coś może iskrzyć, ale idea jest poprawna)
SuPozycje pozN = dok.Pozycje;
foreach (SuPozycja poz1 in pozN)
{
string symbolTw = (string)poz1.TowarSymbol;
}
-
To odnalazłem aczkolwiek pojawia się problem ( załacznik )
-
Napisałem foreach, toś musiał zmienić...
No pewnie że nie działa, bo index w C# podaje się w nawiasach kwadratowych.
oPoz = dok.Pozycje[i];
Dobra, ja mam teraz własną robotę do zrobienia, ale wujek Google pewnie ma trochę wolnych mocy ;)
-
Dlaczego za każdym razem otwierany jest nowy subiekt mimo określenia dopasowania?
-
Nie robisz tego o czym piszesz lub błąd programu, podejrzewam pierwsze...
-
Ok, to ogarnałem pozostało pytanie jak zwolnić sferę po wykonaniu czynności.
Subiegt sgt.Zakoncz(); Nie działa
-
Działa, działa, piszę z doświadczenia.
-
Działa albo nie działa, to zależy od tego co w ogóle uruchamiamy (standalone czy com), ale w tym wypadku zdecydowanie będzie działać.
-
Tylko to zamyka subiekta a nie zwalnia sfery?
-
Tylko to zamyka subiekta a nie zwalnia sfery?
Możesz rozwinąć tę myśl?
-
Tylko to zamyka subiekta a nie zwalnia sfery?
Sfera to przecież w uproszczeniu Subiekt uruchomiony w inny sposób. Na jakich informacjach opierasz swoje wnioski, jak sprawdzasz wykorzystanie Sfery ?