Programerski kutak

Moj trenutni zadatak u firmi jeste, upravo, da gomilu raznih funkcionalnosti naseg unutrasnjeg CRM sistema izlozim nasim novim partnerskim kompanijama (koji su iz mog ugla customeri), i odredjenim specijalim klijentima, i to radimo putem web servisa (tehnologija je potpuno nebitna, mi smo se opredelili za .NET, ali isto tako mogu biti implementirani u bilo cemu).

Ako nije tajna, za koje podatke konkretno iz vaseg CRM sistema ste se odlucili da ih izlozite ka eksternim korisnicima/drugim aplikacijama? Da li resenje koje ste primenili funkcionise na nacin da se eksterni sistemi obavestavaju kada dodje do izmene entiteta koji se prate i da se u tom slucaju izvrsi sinhronizacija u smeru ka eksternim korisnicima?
 
Ako nije tajna, za koje podatke konkretno iz vaseg CRM sistema ste se odlucili da ih izlozite ka eksternim korisnicima/drugim aplikacijama? Da li resenje koje ste primenili funkcionise na nacin da se eksterni sistemi obavestavaju kada dodje do izmene entiteta koji se prate i da se u tom slucaju izvrsi sinhronizacija u smeru ka eksternim korisnicima?

Nas CRM je prilicno kompleksan, i cela njegova funkcionalnost moze se grupisati u nekoliko, nazovimo ih, modula.
Recimo, jedna modul je upravljanje dongle-ovima (Dongle Management) - i nasim partnerima smo izlozili web servis, gde oni mogu vrsiti odredjene radnje u vezi upravljanja zivotnim vekom dongla (kreirati dongle, dodeliti ga odredjenom klijentu/ugovoru, produziti rok trajnja, prekinuti ga, obrisati ga, menjati razne atribute samog dongle-a, i tako dalje....).
Drugi modul je kreiranje racuna (Invoice Management), za koji smo osim web servisa, napravili i web i desktop klijente - gde nase partner kompanije mogu da kreiraju racune, salju ih korisnicima (tu je ukljucen i emailing sistem), vrse odredjene izvestaje, pripremaju podatke za automatske cikluse placanja putem nekog od standardnih bakning-servisa (SEPA, DATEV, LSV (za Svajcarsku), ABA (Australia/Novi Zeland)).......

Svaki web servis ima funkcije za refresh odredjenih podataka, tako da je tu cela prica oko obavestenja i sinhronizacije uproscena na maksimum. Takodje, s obzirom da svaka operacija ima svoju sesiju, na osnovu ID-a sesije, web servis zna stanje izmedju onoga sto je inicijalno ucitano, i onoga sto je trenutno u bazi podataka, kada se pokusa insert/update. Ukoliko postoji razlika - korisnik dobije obavestenje.

Takodje, sam proces je tako organizovan, da racunvodja iz centrale (moje firme) ima svoje klijente, racunovodja kod partnera ima svoje, i tako dalje - jednostavno, nema preklapanja posla, pa i nema potrebe za nekom posebnom medjusobnom sinhronizacijom.
 
Da li zna neko kako da uradim ovaj zadatak: U datom nizu a odrediti broj promena znaka, ukoliko nulu racunamo kao neutralni element.(inace c++ programski jezik)

Evo ti java klasa za to. Verovatno je ista sintaksa i za C++;

Java:
public class SignChangeCounter
{
     public static int checkArray(int[] array)
     {
         boolean isLastNumberPositive = isNumberPositive(array[0]);
         
         boolean isCurentNumberPositive;
         
         int  signChangeCount = 0;
         
         for(int i : array)
         {
             isCurentNumberPositive = isNumberPositive(array[i]);
             
             if(isLastElementPositive != isCurentElementPositive)
             {
                 signChangeCount++;
             }
             
             isLastElementPositive = isCurentElementPositive;
         }
         
         return signChangeCount;
     }
     
     private static boolean isNumberPositive(int number)
     {
         if(number >= 0)
         {
             return true;
         }
         else
         {
             return false;
         }
     }
}

Vidimn da nisam uračunao da je nula neutralna. To možeš uraditi proverom da li je element niza nula, i da ga preskočiš.
 
Poslednja izmena:

Back
Top