środa, 30 kwietnia 2008

Error przy importowaniu dopasowan.

Oto on:
Import has encountered an error and has been canceled. Your system has been restored to its original state. Import has been canceled because the ISV.Config file could not be imported. Check that the file format is valid.

Rozwiazanie problemu opisze jak tylko go rozwiaze:)

wtorek, 29 kwietnia 2008

Blogi o CRM 3.0 ktore czytam i przegladam.

Calkiem dawno temu natknalem sie na pokazna liste blogow zwiazanych z MS CRM, prawdopodobnie wiekszosc anglojezycznych juz przeczytalem albo zamiezam przeczytac. Wielkie dzieki dla: Ronald'a Lemmen'a za stworzenie listy.

http://ronaldlemmen.blogspot.com/2006/03/crm-blog-world.html

Polecam rowniez zagladniecie, na forum CRM z ktorego mozna wyciagnac bardzo duzo informacji.
http://forums.microsoft.com/Dynamics/default.aspx?siteid=27

piątek, 25 kwietnia 2008

Dodanie przycisku na formę w CRM

W moim przypadku przycisk znajduje się w formie nowego zamówienia i ma za zadanie wpisać wartość w inne pole formy ( wywołać cennik ). Zasada jest prosta. Najpierw tworzymy atrybut na formie w miejscu gdzie chcemy zeby przycisk sie wyswietlal - nazwa atrybutu to: new_button Nastepnie do zdarzenia przy ladowaniu formy CRM wprowadzamy ponizszy kod Java Script:


function CreateButton() {
var fieldTable = crmForm.all.new_button_d;
var html = "
" + fieldTable.innerHTML + "

";
fieldTable.innerHTML = html;

document.all.new_button.style.display='none';

}
//Funkcja odpalana przy kliknieciu:
Button_OnClick = function() {
var ar=new Array(1);
ar[0]=new Object;
ar[0].id='{7F61D3C4-030D-DB11-8B49-0015F2D63BD8}';
ar[0].type='1022';
ar[0].name='Service Under Guarantee'; // adapt the correct object name
crmForm.all.pricelevelid.DataValue=ar;
}
// a tereaz wywolanie funkcji
CreateButton();

Dodanie loga firmy do MS CRM 3.0

Oto prosty przykład jak szybko i łatwo mozna dodać logo/lub inna grafikę do CRM. W moim przypadku jest to logo firmy.

Oto co trzeba zrobić:
1. Edytuj ..\wwwroot\_root \navbarpage.aspx
2. Dodaj kod: <.img alt="nazwa firmy" src="http://www.blogger.com/_imgs/firmicon.gif".> zaraz po skrypcie. (nie zapomnij usunąć kropek.
3. Zapisz i zamknij
4. Dodaj firmicon.gif do folderu CRMWEB/_imgs/
4. Odświez CRMa i gotowe

sobota, 12 kwietnia 2008

Wyświetlenie Historii w głównej formie Lead

Skrypt po drobnych modyfikacjach nadaje się do użycia w innych przypadkach. Ja zastosowałem go do wyświetlania historii w formie lead. Na obrazku mozna dokładniej zobaczyć jak to wyszło:



A teraz szybka instrukcja jak to zrobić:
1. Utwórz IFrame na glównej formie z adresem "auto blank"
2.We właściwściach formy wpisz poniższy skrypt na akcje ładowania:

//skrypt do wyswietlenia historii na formie
if (crmForm.FormType == 1)
{
document.all.IFRAME_HistoryFrame.src="about:blank";
}
else
{
var navActivityHistory;
navActivityHistory =document.all.navActivityHistory;

if (navActivityHistory != null)
{
//navActivityHistory.style.display="none";
document.all.IFRAME_HistoryFrame.src="/sfa/leads/areas.aspx?oId=" +crmForm.ObjectId +"&oType=112&security=852023&tabSet=areaActivityHistory";
}
else
{
alert("navHistory Not Found");
}
}

3. Kliknij Event is enabled (uaktywnij skrypt) zapisz i opublikuj.
4. Sprawdź czy wszystko działa i dostosuj wygląd.

środa, 9 kwietnia 2008

Jak przyśpieszyć otwarcie Outlooka który używa CRMa?

Otwierając aplikacje Microsoft Outlook z zainstalowaną przystawką CRM 3.0 program automatycznie synchronizuje się z serwerem CRM co powoduje ze użytkownicy uważają czas ładowania programu za długi. Nie ma takiej potrzeby aby przy ładowaniu Outlooka następowała automatyczna synchronizacja, można ja przełożyć na np 2m później. Aby to zrobić:
1. Otwórz Outlooka w którym zainstalowany jest CRM
2. W menu CRM kliknij Opcje
3.W zakładce Synchronizacja odznacz box: synchronizuj przy starcie programu
Tu tez możesz ustawić jak często ma się odbywać synchronizacja automatyczna.
4.Kliknij OK żeby zapisać i odpal program ponownie.

piątek, 4 kwietnia 2008

Jak zrobić autowypełnienie pola lookup?

Poniżej opisuje jak udało mi się wprowadzić

wartości domyślne w poszczególne pola form za pomoca java skryptu z panelu klienta. W moim przypadku automatyczne wypełnienie przy ładowaniu formy znalazło zastosowanie w:
1.parentcustomerid w formie nowego klienta.
2.cennik w formie nowego zamówienia.
3.Domyślna ilość sztuk zamówienia
Poniżej przedstawiam obrazki i kod js co lepiej przedstawi sytuacje:

Skrypt dodany do formy (ONLOAD):

var CRM_FORM_TYPE_CREATE = 1;
var CRM_FORM_TYPE_UPDATE = 2;
switch (crmForm.FormType)
{
case CRM_FORM_TYPE_CREATE:
crmForm.all.requestdeliveryby.DataValue = new Date();
if(!document.crmForm.all.pricelevelid.DataValue)
{
var ar=new Array(1); ar[0]=new Object; ar[0].id='{B7F9C003-E00C-DB11-8B49-0015F2D63BD8}'; //tą wartosć znalezc możesz uzywajac nazedzia developer toolbar
ar[0].type='1022'; ar[0].name='Retail Price List'; // podaj poprawną nazwę
crmForm.all.pricelevelid.DataValue=ar;
}
break;
case CRM_FORM_TYPE_UPDATE: //komenda przy aktualizacji formy nie rób nic
break;
}

GoogleMaps i CRM zintegrowane pomyslnie.

Dzis zakonczyle implementacje integracji google maps z CRM 3.0 Wczesniejszy problem rozwiazalem dzieki poradzie Wolter Kreun. Z pliku web.config trzeba usunac dwie linie, ktore powoduja problem. W moim przypadku byla to linia:
11 i 20.
IFrame dziala jak narazie tylko dla Accaunts ale mam zamiar ja wprowdzis w pola Leads.
Jak narazie pokoazuje sie ERROR.
Integracje i sama aplikacje prawdopodobnie przetlumacze na jezyk polski jak znajde czas, wiec bedzie dostepna dla polskich wersji CRMa.