Skocz do zawartości

[Sfera] Wpłata na rachunek/Pozostałe operacje, bez przypisanego klienta

Polecane posty

Czy istnieje jakaś możliwość sferycznego stworzenie wpłaty (operacji bankowej) bez przypisanego podmiotu, rodzaju Pozostałe Operacje? W Subiekcie takowe występują, aczkolwiek ręcznie nie można ich utworzyć. Próbowałem stworzyć sferycznie, ale upiera się podmiot do rozrachunku. Transfer mogę zrobić, to wiem, aczkolwiek chodzi o pozostałe operacje.

Link to postu

Domyślnie podtyp rozrachunku w operacji bankowej ustawia się na podstawie "domyślnego rozrachunku dla wpłaty/wypłaty" wybranego w rodzaju operacji bankowej. Więc możliwe, że wystarczy zmienić w rodzaju operacji bankowej domyślny rozrachunek dla wpłaty. Ale można też ręcznie ten podtyp zmienić w operacji bankowej, mniej więcej w ten sposób:

IPodtypyRozrachunkow podtypyRozrachunkow = sfera.PodajObiektTypu<IPodtypyRozrachunkow>();
PodtypRozrachunku splataNaleznosci = podtypyRozrachunkow.Dane.Wszystkie().FirstOrDefault(p => p.Nazwa == "Spłata należności");
bp.Dane.Rozrachunek.Podtyp = splataNaleznosci;

EDIT: na domyślne ustawie podtypu rozrachunku oprócz ustawień rodzaju operacji bankowej wpływ mają również ustawienia klienta z zakładki płatności. Tak więc ewentualne ręczne zmiany podtypu trzeba wykonać już po ustawieniu w operacji bankowej rodzaju operacji oraz podmiotu, bo inaczej to ręczne przypisanie nadpisze się ustawieniami domyślnymi.

Edytowane przez Aniela Tatowicz
Link to postu
13 minut temu, Aniela Tatowicz napisał:

EDIT: na domyślne ustawie podtypu rozrachunku oprócz ustawień rodzaju operacji bankowej wpływ mają również ustawienia klienta z zakładki płatności

Hmm, to chyba to może mieć wpływ na mój przypadek, bo mam teraz taki kod:

                if (results.customer != null && results.customer != "" )
                {
                    int customer = results.customer;
                    var podmiot = podmioty.Dane.Wszystkie().Where(p => p.Id == customer).FirstOrDefault();
                    operacja.Dane.Kontrahent = podmiot;
                    WriteLineInfo("Podmiot: ", "" + podmiot.NazwaSkrocona);
                }

                // rodzaj operacji
                operacja.Dane.RodzajOperacji = rodzajeOperacji.Dane.Wszystkie().Where(s => s.Nazwa == "Pozostałe operacje").FirstOrDefault();
                WriteLineInfo("Rodzaj operacji: ", operacja.Dane.RodzajOperacji.Nazwa);
                operacja.Dane.Status = (byte)1;
                operacja.Dane.Wplyw = true;                

                // podtyp
                operacja.Dane.Rozrachunek.Podtyp = podtypyRozrachunkow.Dane.Wszystkie().Where(p => p.Nazwa == "Spłata należności").FirstOrDefault();
                WriteLineInfo("Rozrachunek: ", operacja.Dane.Rozrachunek.Podtyp.Nazwa);

                // kwota
                decimal amount = results.amount;
                operacja.Dane.Kwota = amount;
                WriteLineInfo("Kwota: ", "" + amount);
                operacja.Dane.Wplyw = true;

                // tytuł
                operacja.Dane.Tytul = results.title;
                WriteLineInfo("Tytułem: ", "" + operacja.Dane.Tytul);

                // ustawienie daty
                string dateString = results.date + " 12:00:00,000";
                DateTime dataoperacji = DateTime.ParseExact(dateString, "yyyy-MM-dd HH:mm:ss,fff", System.Globalization.CultureInfo.InvariantCulture);
                operacja.Dane.Data = dataoperacji;
                WriteLineInfo("Data: ", "" + operacja.Dane.Data);

Klient nie zawsze występuje, ale dlatego daje go na początku, aby pozmieniać wartości po jego wczytaniu. Ustawienie rodzaju i podtypu teoretycznie działa, bo zwraca mi wykonanie kodu to:

image.png.0f351f7866f79cc59ecd1ee3a10175e1.png

Niestety, w Subiekcie ląduje jako zobowiązanie:

image.png.a1532401fbc52e86346903705bfaca02.png

Więc chyba coś jeszcze nie tak z tym rozrachunkiem, mimo zmiany jego parametrów po wczytaniu klienta.

Link to postu
2 minuty temu, Aniela Tatowicz napisał:

Najprawdopodobniej problemem jest ponowne oznaczenie operacji jako wpływ po ustawieniu kwoty.

Bingo! Tak to jest, jak się porządkuje kolejność przez kopiuj, a nie wytnij, a trzeba się pilnować kolejności.

 

Mam jeszcze jedną prośbę, myślę, że warto dodać taką zaawansowaną operację bankową, z rodzajem operacji i zmianą typu rozrachunku, oraz oznaczeniem niuzgodnionego, do instrukcji Sfery. Tam przykłady do operacji są skromne, więc taki bardziej zaawansowany, rozwiązałby wiele pytań szybciej, niż szukanie na forum ;)

Link to postu
×
×
  • Dodaj nową pozycję...