Marcin S.

Marcin S. BI Consultant, ETL
developer

Temat: Coding standards

Witam wszystkich,

czy znacie, stosujecie jakies coding std. w swoich projektach BO/CR w placzeniu z SVNem ?
Jakie macie albo znacie (jesli nie stosujecie) best practices ?

Pozdr
Marcin
Marcin S.

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

Temat: Coding standards

Raporty, które tworzę dla moich klientów wrzucam na SVN w postaci plików RPT.
Przy każdej zmianie dopisuję w komentarz, aby było wiadomo co zmieniłem w raporcie.

Niestety raporty RPT są plikami binarnymi i nie da się porównywać zmian na poziomie plików. Jedyne znane mi rozwiązanie, które można zastosować to eksport definicji raportu do pliku tekstowego za pomocą standardowego eksportu "Report File Definition".

Niestety nie zawiera on wszystkich istotnych informacji, np. warunków wpisanych w Running Total Fields.

Dodatkowo trzeba pamiętać, aby zawsze oprócz pliku RPT zachowywać adekwatny plik tekstowy.

Ubolewam nad tym, że Crystal Reports nie zapisuje raportów do pliku XML tak jak Reporting Services. Wówczas nie było żadnych problemów z wersjonowaniem.
Przy okazji można byłoby edytować raportyw notatniku ;-)

Myślałem kiedyś o stworzeniu własnej aplikacji, która zrzuci definicję raportu do pliku z większą ilością informacji (TXT lub XML), ale na razie nie miałem na to czasu.

Warto pamiętać, że CR 2008 umożliwia tworzenie dodatków (Add-ins) i można pokusić się o wbudowanie obsługi svn do Crystala.
Marcin S.

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

Temat: Coding standards

Moje niektóre best practices:

- dodawanie komentarzy w skomplikowanych formułach i warunkach

- warunki w Selection Formula wprowadzam w osobnych liniach + komentarze w niejasnych sytuacjach, np.

{Customer.Country} = {?Country}
AND {Customer.Region} = {?Region}
AND {Order.OrderDate} < {?OrderDate}
AND ({Product.Color} = 'green' OR {Product.Color} = 'red')
AND {Order.Flag} = 1 // pomijamy usunięte zamówienia

- unikam tworzenia zmiennych i stosuję je tylko wtedy gdy nie ma innej możliwości

- unikam tworzenia podraportów (subreports) jeśli nie ma takiej potrzeby

- wyłączam Automatic Smart Linking

- tworzę dodatkowe sekcje aby rozdzielić raport na logiczne części

- nie wstawiam Total Page Count gdyż wydłuża czas generacji raportuMarcin Sulecki edytował(a) ten post dnia 07.09.11 o godzinie 16:57
Marcin S.

Marcin S. BI Consultant, ETL
developer

Temat: Coding standards

Marcin Sulecki:
- dodawanie komentarzy w skomplikowanych formułach i warunkach
- warunki w Selection Formula wprowadzam w osobnych liniach + komentarze w niejasnych sytuacjach, np.

{Customer.Country} = {?Country}
AND {Customer.Region} = {?Region}
AND {Order.OrderDate} < {?OrderDate}
> AND ({Product.Color} = 'green' OR {Product.Color} = 'red')
AND {Order.Flag} = 1 // pomijamy usunięte zamówienia

- unikam tworzenia zmiennych i stosuję je tylko wtedy gdy nie ma innej możliwości

Robie podobnie.
- unikam tworzenia podraportów (subreports) jeśli nie ma takiej potrzeby

Nigdy za nimi nie przepadalem, wiec tylko jesli must have ;)
- wyłączam Automatic Smart Linking
- tworzę dodatkowe sekcje aby rozdzielić raport na logiczne części
- nie wstawiam Total Page Count gdyż wydłuża czas generacji raportu

Na potrzeby projektu Tortoise, TrackWise. Budowa (w tym wyglad) raportu okreslona z gory przez klienta w projekcie. Nie wiem tylko czy ze wzgledow technicznych zajdzie koniecznosc pracy w CR XI.

Następna dyskusja:

Programista 2/2012 - Qualit...




Wyślij zaproszenie do