Temat: Edycja formuły

Witam,
Mógłby ktoś wspomóc mnie w edycje poniższej formuły: cdate({POZYCJA_DOKUMENTU_MAGAZYNOWEGO.DATA_WAZNOSCI}-36161)
Mianowicie, gdy data jest wpisana na dokumencie to całość wyświetla się prawidłowo, lecz gdy na dokumencie nie wpisze się daty to według formatu wypisuję datę na podstawie 36161, a chciałym aby było pusto. Próbowałem już kilka kombinacji ifnull, =0 , lecz bez powodzenia.
Marcin S.

Marcin S. Programista, trener
i konsultant w
zakresie .NET/.NET
Cor...

Temat: Edycja formuły

Spróbuj użyć funkcji IsNull:


If not(IsNull({POZYCJA_DOKUMENTU_MAGAZYNOWEGO.DATA_WAZNOSCI})) Then cdate({POZYCJA_DOKUMENTU_MAGAZYNOWEGO.DATA_WAZNOSCI}-36161)

Temat: Edycja formuły

hmmm, próbowałem z tym i w tym przypadku gdy jest puste to wypisuje mi datę 28.12.1800.
Marcin S.

Marcin S. Programista, trener
i konsultant w
zakresie .NET/.NET
Cor...

Temat: Edycja formuły

Michał R.:
hmmm, próbowałem z tym i w tym przypadku gdy jest puste to wypisuje mi datę 28.12.1800.

Sprawdź za pomocą SQL'a jaka jest faktycznie zwracana wartość z tego pola.

Temat: Edycja formuły

jak dodaje jako wyrażenie SQL to jest błąd, jak dodaje jako pola formuł to wyświetla dane, lecz gdy puste wstawia format po "then".
Marcin S.

Marcin S. Programista, trener
i konsultant w
zakresie .NET/.NET
Cor...

Temat: Edycja formuły

Michał R.:
jak dodaje jako wyrażenie SQL to jest błąd, jak dodaje jako pola formuł to wyświetla dane, lecz gdy puste wstawia format po "then".

Nie chodzi mi o tworzenie wyrażenia SQL w raporcie tylko wysłanie bezpośrednio zapytania SQL do bazy danych. Na przykład za pomocą SQL Server Management Studio (SSMS) lub Azure Data Studio.

Musisz dokładnie sprawdzić jaka wartość jest zwracana.
Marcin S.

Marcin S. Programista, trener
i konsultant w
zakresie .NET/.NET
Cor...

Temat: Edycja formuły

Z tego co pamiętam kolumna POZYCJA_DOKUMENTU_MAGAZYNOWEGO.DATA_WAZNOSCI jest typu int i dopuszcza wartości null.

Dodaj do raportu pole POZYCJA_DOKUMENTU_MAGAZYNOWEGO.DATA_WAZNOSCI, bez żadnej konwersji i zobacz jakie wartości wyświetla.

Temat: Edycja formuły

jeśli jest POZYCJA_DOKUMENTU_MAGAZYNOWEGO.DATA_WAZNOSCI to wypsiuje 81 462 i jest wskazana jako liczba.
Marcin S.

Marcin S. Programista, trener
i konsultant w
zakresie .NET/.NET
Cor...

Temat: Edycja formuły

Michał R.:
jeśli jest POZYCJA_DOKUMENTU_MAGAZYNOWEGO.DATA_WAZNOSCI to wypsiuje 81 462 i jest wskazana jako liczba.
a co jeśli POZYCJA_DOKUMENTU_MAGAZYNOWEGO.DATA_WAZNOSCI nie jest ustawiona?

Zwraca 0 czy null?

Temat: Edycja formuły

Hmm, Jeśli na dokumencie jest null to wypisuje datę 28.12.1800, gdy 0 sam przypisze null (jesli o to chodzi). Przykładowo w data-dokumentu mam CDATE({DOKUMENT_MAGAZYNOWY.DATA}-36161)
Patrzyłem, w innych raportach też mam ustawioną taką konwersję, tylko w tamtych przypadkach wartość jest wskazywana zawsze, a czasem jest potrzeba wydrukować WZ bez tych danych i są to nie potrzebne herezje :)

Następna dyskusja:

Formuły w Crystal Syntax




Wyślij zaproszenie do