poniedziałek, 15 kwietnia 2013

T-SQL łączenie dwóch baz z różnym kodowaniem (?) znaków

Recepta na błąd:
Cannot resolve the collation conflict between "Polish_100_CI_AS" and "Polish_CI_AS" in the equal to operation.
W przypadku zapytania łączącego (join) dwie bazy danych z różnymi ustawieniami kodowania. Błąd powstaje przy joinie na pole, które w dwóch bazach ma różne kodowania.

W pytaniu przy join należy dopisać:

COLLATE Database_default

Czyli:

Select p1.*, p2.* from Baza1.dbo.lista1 p1 join Baza2.dbo.lista2 p2 on p2.string COLLATE Database_default = p1.string


piątek, 4 stycznia 2013

T-SQL pierwszy dzień miesiąca i pokrewne



T-SQL pierwszy dzień miesiąca, ostatni dzień miesiąca, pierwszy dzień następnego miesiąca i tym podobne dla dowolnej zadanej daty. Sposób dość pokrętny, ale działa :)



declare @data datetime;
declare @starter datetime;
set @starter = '01.01.1900';
set @data = '29.02.2012'

select DATEADD(mm, datepart(mm, @data)-1, DATEADD(YYYY, DATEPART(YYYY, @data) - 1900, @starter)) as pierwszy_dzień_miesiąca,
DATEADD(D, -1, DATEADD(mm, datepart(mm, @data), DATEADD(YYYY, DATEPART(YYYY, @data) - 1900, @starter))) as ostatni_dzień_miesiąca,

DATEADD(D, -1, DATEADD(mm, datepart(mm, @data)+3, DATEADD(YYYY, DATEPART(YYYY, @data) - 1900, @starter))) as ostatni_dzień_Za_trzy_Miesiące,
DATEADD(mm, datepart(mm, @data)-3, DATEADD(YYYY, DATEPART(YYYY, @data) - 1900, @starter)) as pierwszy_dzień_dwa_miesiące_temu

Oczywiście nie będzie działać dla dat < 01.01.1900

środa, 10 października 2012

Reporting Services - proste formatowanie warunkowe

Proste formatowanie warunkowe w Reporting Services (SQL Server 2008):

We właściwościach TextBox kliknąć na "Fx" obok koloru czcionki.

=iif(me.value<0;"Red";"Black")
efekt: czerwony kolor czcionki dla zawartości ujemnej (mniejszej od zera)

poniedziałek, 28 maja 2012

remmina - niedziałąjący schowek

Od jakiegoś czasu nie działa schowek w kliencie pulpitu zdalnego remmina. Rozwiązanie problemu:

sudo add-apt-repository ppa:dupondje/ppa
sudo apt-get update
sudo apt-get upgrade

Może być konieczny restart, co by załapało :)

Szczegółowy opis BUGa :

https://bugs.launchpad.net/ubuntu/+source/remmina/+bug/937522



poniedziałek, 31 października 2011

ms excel - wysokość raty kredytu

Do obliczenia wysokości raty kredytu służy funkcja PMT.

Należy pamiętać, że w przypadku raty miesięcznej oprocentowanie dzielimy na 12 a liczbę lat kredytu mnożymy przez 12 :)

Przykład:
A1: 200.000 (kwota)
A2: 0,065 (oprocentowanie)
A3: 30 (liczba lat)

rata =PMT(A2/12;A3*12;A1)

Funkcja zwraca wartość raty z minusem!

gnome shell - przyciski zamykania po lewej stronie

źródło: http://netbit73.blogspot.com/2011/10/gnome-shell-ustawiamy.html

gconf-editor

klucz:
/desktop/gnome/shell/windows/button_layout

Ustawiamy:
close,maximize,minimize: