Mina produkter

Logga in för att följa kategorier och för att få genvägar i denna meny
avbryt
Visar resultat för 
Visa  endast  | Sök istället efter 
Menade du: 
Senaste inlägg

Testat allt och det verkar funka. Det som bekymrar mig lite dock är att man MÅSTE köra en AdkUpdate direkt efter att man har lagt till en rad.Säg att jag vill lägga till en rad EFTER att jag har lagt till en annan. Dvs:1. Lägg till en rad, uppdatera data, uppdatera nrows.2. Lägg till en till rad, uppdatera data, uppdatera nrows.3. Uppdatera Huvudpekaren.Så verkar det som att en del data försvinner påvägen. Jag vill helst vänta med att köra AdkUpdate av anledningen till att jag kanske inte vill spara den data jag försöker sätta in än.Allt nedanstående sker innan en AdkUpdate.Så säg:var pOrder = AdkCreateData(ADK_DB_ORDER_HEAD);AdkSetDouble(pOrder, ADK_OOI_HEAD_DOCUMENT_NUMBER, 1);var pDataRow = AdkCreateDataRow(ADK_DB_ORDER_ROW, 1);var pTempData = AdkGetDataRow(pDataRow, 0);AdkSetStr(pTempData, ADK_OOI_ROW_TYPE_OF_ROW, "T");AdkSetStr(pTempData, ADK_OOI_ROW_TEXT = "ExempelText");AdkSetDouble(pOrder, ADK_OOI_HEAD_NROWS, 1);AdkSetData(pOrder, ADK_OOI_HEAD_ROWS, pDataRow);// sen kommer jag på att jag vill lägga till en till rad:var pDataRow = AdkCreateDataRow(ADK_DB_ORDER_ROW, 2);var pTempData = AdkGetDataRow(pDataRow, 1);AdkSetStr(pTempData, ADK_OOI_ROW_TYPE_OF_ROW, "T");AdkSetStr(pTempData, ADK_OOI_ROW_TEXT = "Annantext");AdkSetDouble(pOrder, ADK_OOI_HEAD_NROWS, 2);AdkSetData(pOrder, ADK_OOI_HEAD_ROWS, pDataRow);AdkAdd(pOrder);Det resultat jag får då är att jag har skapat ett orderhuvud med EN rad, dvs den rad med "Annantext". Det här har förmodligen med att göra att den första orderrowen inte existerar i visma.Det är även i just detta fall som det hade varit trevligt att kunna sätta en extern pekare till en DataRow-vektor istället för att behöva hämta hem pTempData pekare och behöva sätta värden i den.Dvs, något i stil med:var pOrder = AdkCreateData(ADK_DB_ORDER_HEAD);AdkSetDouble(pOrder, ADK_OOI_HEAD_DOCUMENT_NUMBER, 1);// sätta in första radenvar pDataRow = AdkCreateDataRow(ADK_DB_ORDER_ROW, 1);var pTempData = AdkGetDataRow(pDataRow, 0);AdkSetStr(pTempData, ADK_OOI_ROW_TYPE_OF_ROW, "T");AdkSetStr(pTempData, ADK_OOI_ROW_TEXT = "ExempelText");AdkSetDouble(pOrder, ADK_OOI_HEAD_NROWS, 1);AdkSetData(pOrder, ADK_OOI_HEAD_ROWS, pDataRow);// sätta in andra raden:var pDataRow = AdkCreateDataRow(ADK_DB_ORDER_ROW, 2);// hämta hem den existerande raden.var existingRow = AdkGetData(pOrder, ADK_OOI_HEAD_ROWS, 0);// sätta den existerande raden i den skapade dataraden på index 0.AdkSetDataRow(pDataRow, 0, existingRow);// sätta den nya radenvar pTempData = AdkGetDataRow(pDataRow, 1);AdkSetStr(pTempData, ADK_OOI_ROW_TYPE_OF_ROW, "T");AdkSetStr(pTempData, ADK_OOI_ROW_TEXT = "Annantext");AdkSetDouble(pOrder, ADK_OOI_HEAD_NROWS, 2);AdkSetData(pOrder, ADK_OOI_HEAD_ROWS, pDataRow);
Hej Gabriel,Ser att du verkar jobba i .Net så om du vill ha ett smidigare sätt att arbeta med Adk API'et så vill jag passa på att tipsa om ett API för Vismas API som vi på Infostep har byggt och licensierar ut till andra utvecklare.Att skapa en Visma-order med två rader (en textrad och en artikelrad) via vårt api är inte svårare än:var order = new Order();order.Date1 = DateTime.Now;order.CustomerNumber = "100";order.Rows.Add(new Order.Row {Type = "T", Text = "Exempeltext" });order.Rows.Add(new Order.Row {ArticleNumber = "110", Quantity=10});order.Save();för att hitta en kund:var customer = CustomerStore.FindByNumber("100");för att hitta alla ordrar på en kund:var orders = OrderStore.FindByCustomerNumber("100");Resten av api'et ser ut/fungerar på liknande sätt. Hör av dig till benny.olsson@infostep.se om du tycker det ser intressant ut.
Ja, så kan du sköta det. Genom att registrera en delbetalning på fakturan vid varje autogirodragning kommer beloppet på fakturan successivt minska under året.
Det här svaret skapades från ett sammanslaget ämne som hette Abonnemangsfakturering. Hej jag vill ha en funktion där jag kan lägga upp en kund som abonnemangs fakturering tex har en kund som köper en hemsida av mig och skall betala varje år i januari.så skall systemet skapa en faktura tex 30 dagar innan tiden går ut eller vad man nu väljer.Vill då att fakturan skall skapas och bli markerad att den ej är skickad.
Hej!Börja med att registrera inbetalningen som kunden har gjort. Kvar har du ett saldo som du kan göra en bortskrivning på. Gå in på fakturan och i kommandofältet väljer du Direktbetala. Välj datum och ta bort beloppet som ligger i rutan Betalt. Klicka i rutan Bortskr och välj ett bortskrivningsalternativ, finns det inget passande kan du skapa ett nytt. Beloppet kommer att fyllas i med automatik och du kan då klicka på Lagra.