---
title: "SPCS API"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/153385-spcs-api"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "Zaiman"
published: "2006-11-04T20:03:40.000Z"
updated: "2007-09-13T21:01:35.000Z"
replies: 65
views: 15196
page: 1
pages: 4
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/dotnet/153385-spcs-api"
---

# SPCS API

_Sida 1 av 4._

## #1 — Zaiman, 2006-11-04T20:03Z

Någon som har exempelkod för att använda SPCS API i C# ? 

Helst någon som gjort anrop på api med orderläggning, bara något enkelt så att jag kommer igång och lär mig.  :bire

Permalänk: https://www.webforum.nu/p/153385

## #2 — Lasp, 2006-11-04T20:17Z

SPCS tar ju ordentligt betalt för att du skall få använda APIét.
Vi har testat men förkastat deras policy.

Permalänk: https://www.webforum.nu/p/1892924

## #3 — Zaiman, 2006-11-04T21:01Z

Vad rekomenderar du för annan lösning då?
Eftersom du inte besvarar min fråga så kanske du kan visa en anna lösning som besvarar min fråga om jag omformulerar den till:

Någon som har exempelkod för att skapa en order i SPCS Administration utan att använda deras API ?

Permalänk: https://www.webforum.nu/p/1892934

## #4 — OveRRidE, 2006-11-05T10:30Z

> **Zaiman skrev:**
>
> Vad rekomenderar du för annan lösning då?
> Eftersom du inte besvarar min fråga så kanske du kan visa en anna lösning som besvarar min fråga om jag omformulerar den till:
> 
> Någon som har exempelkod för att skapa en order i SPCS Administration utan att använda deras API ?

Jag håller med lasp om att SPCS API suger, för det gör det verkligen, men att inte använda det om man ska kommunicera med deras system, det är bara korkat. Det finns ingen som rekommenderar att gå förbi ett API in i ett system på det sättet, och såvida jag vet finns det inga andra bra sätt att prata med SPCS (Administration). Det är om man går mot databasfilerna direkt och det är som sagt verkligen inte rekommenderat. 

API'et suger, men det gör livet också. Det kostar också (nu vet jag inte hur mycket), men det är ju så saker och ting fungerar. Om du införskaffar API't har säkerligen Visma information hur du sedan kan gå vidare.

Permalänk: https://www.webforum.nu/p/1892978

## #5 — emission, 2006-11-05T12:37Z

> **OveRRidE skrev:**
>
> API'et suger, men det gör livet också. Det kostar också (nu vet jag inte hur mycket), men det är ju så saker och ting fungerar. Om du införskaffar API't har säkerligen Visma information hur du sedan kan gå vidare.

<http://www.vismaspcs.se/statisk/integration/utv.htm>

Från 4500:-

Inte särskilt dyrt, om man verkligen vill lösa en SPCS-uppgift. Att försöka hitta kringvägar kostar mycket mer i tid.

Permalänk: https://www.webforum.nu/p/1893008

## #6 — Zaiman, 2006-11-05T14:15Z

\*suck\*

Det är alltså ingen som har ett exempel som jag efterfrågar? Inte vad det kostar, inte att det suger, inte att man inte ska gå direkt mot databasen..

Jag efterfrågar någon kodsnutt som jag kan lära mig av inget annat.

Permalänk: https://www.webforum.nu/p/1893038

## #7 — OveRRidE, 2006-11-05T14:36Z

> **Zaiman skrev:**
>
> Det är alltså ingen som har ett exempel som jag efterfrågar? Inte vad det kostar, inte att det suger, inte att man inte ska gå direkt mot databasen..

Du frågade ju själv; 

> Någon som har exempelkod för att skapa en order i SPCS Administration **utan att använda deras API** ?

Var inte mitt inlägg svar nog på detta? 

> **Zaiman skrev:**
>
> Jag efterfrågar någon kodsnutt som jag kan lära mig av inget annat.

Som jag sa; försöka att kontakta Visma.

Permalänk: https://www.webforum.nu/p/1893045

## #8 — P, 2006-11-05T19:32Z

Borde inte de som gjort SPCS tillhandahålla lite kodexempel?

Permalänk: https://www.webforum.nu/p/1893166

## #9 — Lasp, 2006-11-05T19:47Z

Kan bara tillägga för att förklara mig lite att vi skulle peta in data i SPCS från mitt biluthyrningssystem. Då skulle alla som körde SPCS ha avtal om API knappt en tusenlapp. Men med hundra ställen blir det många pengar varje år.

Permalänk: https://www.webforum.nu/p/1893173

## #10 — Zaiman, 2006-11-05T20:19Z

Kontaktar VISMA i morgon. Hoppas dem har några exempel att dela med sig av.

Permalänk: https://www.webforum.nu/p/1893183

## #11 — Zaiman, 2006-11-08T13:40Z

Kan meddela att det inte finns några exempel i c# på den skiva jag har från spcs.

Så nu blir det svårt att översätta vb kod till c# och få det fungera.

Permalänk: https://www.webforum.nu/p/1893990

## #12 — aleborg, 2006-11-08T13:54Z

Ska du bara hämta data så gå direkt mot databasfilerna, ska du arbeta aktivt så måste du nog ha API:et. 4500 kr är ingenting, när vi köpte Mamuts API betalade vi 20 000 kr. Det värsta är att de har ändrat så mycket i API:et så att vi inte kan uppgradera utan att omprogrammera allt.

Permalänk: https://www.webforum.nu/p/1893993

## #13 — Zaiman, 2006-11-08T14:43Z

Njae.. Inte bara hämta. Jag vill ju lära mig hur jag lägger till tex en order på ett "korrekt" sätt. Att bara gå mot databaserna har jag gjort förr för att hämta data. Men tanken är ju att lära mig så att jag kan utveckla program, och med deras api. Det var främst därför jag efterfrågade exempel på implemenation av deras api i c#. Det är ju svårt som nybörjare att dels lära sig programmera och dessutom behöva översätta från ett språk som man inte använt så mycket. (man lär så länge man lever)

Jag är ingen fena på C# och håller på lära mig det. Har kommit så långt att jag kan öppna och stänga med api delen. Så jag har mycket kvar att lära mig. :-) så jag kanske gör många fel i början.

Permalänk: https://www.webforum.nu/p/1894001

## #14 — aleborg, 2006-11-08T22:46Z

> **Zaiman skrev:**
>
> Så jag har mycket kvar att lära mig. :-) så jag kanske gör många fel i början.

Det är så man lär sig, genom misstag.
Tyvärr själv enbart jobbat mot deras databas, inte mot API:et så jag är inte mycket till hjälp på den delen tyvärr.

Permalänk: https://www.webforum.nu/p/1894125

## #15 — Zaiman, 2006-11-09T08:43Z

Uj ja.. Misstag lär man sig av.

Har klurat ut att jag måste använda unsafe kod för att lösa vissa uppgifter (tror jag i alla fall). Har fått det att fungera med att öppna och stänga med api delen.

Men jag förstår inte hur jag ska få resterande att kommunicera med api:et
Jag har med störst sannolikhet gjort fel   :e 

Har gjort om en del kod, någon som vill rätta och kanske lösa på bättre sätt?

```
Public Type ADKERROR
    
    lRc As Long
    lDbTable As Long
    lField As Long
    lFunction As Long
    lProgramPart As Long
                                 
End Type
```

översatt till:

```
struct ADKERROR
{
    public long lRc;
    public long lDbTable;
    public long lField;
    public long lFunction;
    public long lProgramPart;
}
```

Så när jag öppnar anropar jag:

```
ADKERROR myErr = new ADKERROR();
            myErr = adk.AdkOpen("C:\\spcskatalogen", "c:\\Ovnbol");
```

Där är adk.adkOpen motsvarande kod:

```
 [DllImport("adk.dll", EntryPoint = "_AdkOpen@8")]
        public static extern ADKERROR AdkOpen(string pszSystemPath, string pszFtgPath);
```

Allt frid och fröjd till jag skickar in felaktiga värden då ska man tydligen kontrollera lRc om den är skiljt från 0 och det vet jag hur jag gör. Men sen har jag en del som är för felhanteringen. Det är här mina problem börjar. Tydligen när jag ska hämta en feltext ska jag skicka med en pekare.. och ett tomt fält som api delen ska skriva till. Här har jag kört fast.

Någon med lite ideér och tips? Mottages tacksamt     ;)

Permalänk: https://www.webforum.nu/p/1894194

## #16 — Zaiman, 2006-11-14T12:13Z

\*puffar\* för den sista delen.

Permalänk: https://www.webforum.nu/p/1895848

## #17 — Nevyn, 2006-11-28T10:13Z

Det går att använda SPCS API från C#. Jag löste det genoma att bygga ett classbibliotek  i C++ för att wrappa API:et, biblioteket innehåller även en massa egen funktionalitet.
Försöker emulera en SQL-databas så gått det går, iom att det andra systemet använder MySQL som backend DB.

PM:a epost så kan jag skicka koden, den är dock väldigt anpassat för att användas mot vårt säljstödssystem, men du kan nog återanvända mycket av koden. Om inte så ser du iaf upplägget.

Lånar tråden lite; Finns det något sett att söka på andra fält än t.ex. ordernummer mm (ordertabellen), exempelvis hämta alla ordrar med en viss resultatenhet, alla makulerade ordrar osv. I programmet \_går det\_ iaf!

Håller med om att API:et är ganska kasst, nog ett av de värsta API:er jag någonsin arbetat med i hela mitt yrkesverksamma liv! Slött, dåligt, saknad funktionalitet, dålig dokumentation, kan hålla på i en evighet!

Permalänk: https://www.webforum.nu/p/1902573

## #18 — Zaiman, 2006-11-28T10:22Z

Nevyn:

Ser fram emot din kod. Mycket intressant att lära sig nytt även om API delen är föråldrad och dålig.
Du har fått min epost i ett PM .

Permalänk: https://www.webforum.nu/p/1902577

## #19 — OveRRidE, 2006-11-28T10:42Z

> **Nevyn skrev:**
>
> Lånar tråden lite; Finns det något sett att söka på andra fält än t.ex. ordernummer mm (ordertabellen), exempelvis hämta alla ordrar med en viss resultatenhet, alla makulerade ordrar osv. I programmet \_går det\_ iaf!

Jag är inte 100% säker, men min gissning är att du får loopa igenom alla ordrar och kolla adk-struktarnas fält du söker på för att filtrera bort de som inte matchar..

Permalänk: https://www.webforum.nu/p/1902585

## #20 — voigtann1, 2006-11-28T10:46Z

Tips:
<http://www.carlosag.net/Tools/CodeTranslator/Default.aspx>

om du vill ha hjälp med convert :D

Permalänk: https://www.webforum.nu/p/1902586

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/153385-spcs-api  
Nästa sida: https://www.webforum.nu/amne/dotnet/153385-spcs-api/page2.md
