Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


SP Problem

Postades av 2006-03-25 17:55:03 - Gert Lindholm, i forum sql-server/msde, Tråden har 12 Kommentarer och lästs av 762 personer

Om jag har en Sp och vill Få ut Lagersaldo fr en tabell och där Lager är 0 få ut Beställningsvara.

<code>
If Lager IS NULL
DECLARE
SET Lager = 'Beställningsvara'
AS
SET NOCOUNT ON;
SELECT ArtNr, Benamning,Storlek,Farg,Lager FROM LagerSaldo
WHERE Lager IS NULL
</code>


Svara

Sv: SP Problem

Postades av 2006-03-25 20:18:58 - Ola Lindfeldt

Om jag förstår dig rätt..

SELECT ISNULL (Lager, 'Beställningsvara')

om Lager är NULL ges texten i parameter 2.


Svara

Sv:SP Problem

Postades av 2006-03-26 09:31:07 - Gert Lindholm

Vad jag vill är att om Lagersaldo är 0 så vill jag få ut texten Beställningsvara


Svara

Sv: SP Problem

Postades av 2006-03-27 10:23:09 - Maria Green

Vill du verkligen returnera en text istället för en tabell? Jag skulle valt att i den kod som anropar SP:n kontrollera om man får ut några poster och om inte skriva ut (eller vad du nu vill göra med ordet) 'Beställningsvara'.

Ett annat alternativ är ju att låta SP:n ha ett returvärde där du returnerar antalet poster, är det då 0 vet du att det inte finns några. Kan dessutom vara praktiskt i andra sammanhang i koden. Du kan också använda returvärdet för att tex returnera -1 om något går fel.


Svara

Sv: SP Problem

Postades av 2006-03-27 11:03:59 - Mikael Svensson

Ska vi se om jag förstått dig rätt. När du söker ut ditt lagersaldo så vill du få ut ordet beställningsvara istället för antal i lager (som jag gissar är kolumnen 'Lager').

1 lösning: Får ut alla, men där Lager är 0 så skrivs ordet Beställningsvara ut.
<code>
SELECT
ArtNr
, Benamning
, Storlek
, Farg
, case when Lager = 0 then 'Beställningsvara' else convert(varchar,Lager) end
FROM
LagerSaldo
</code>

2 lösning: Hämta ut endast de som är beställningsvara
<code>
SELECT
ArtNr
, Benamning
, Storlek
, Farg
, 'Beställningsvara'
FROM
LagerSaldo
where Lager is NULL --alternativt Lager = 0
</code>


Svara

Sv:SP Problem

Postades av 2006-03-28 18:27:34 - Gert Lindholm

Jag har en Gridview på en sida listar Lagersaldo fr en SQL db. Skulle vilja få ut att om Saldo är 0 så visas i Saldo kolumnen att det är en beställningsvara.

Du skriver att jag i den kod som anropar SP:n, den är ju autogenererad och inte i Code behind. Hur skulle en sådan kunna se ut. Dom fält jag har är. ArtNr,Benämning, Färg, Lager.

Sp kollar Benämning och Färg sedan listas Produkterna.


Svara

Sv: SP Problem

Postades av 2006-03-29 10:39:45 - Ola Lindfeldt

Posta din SP i sin helhet och beskriv exakt vad du vill göra så kanske någon kan hjälpa dig.
Det går inte lösa med nån Wizard i VS.


Svara

Sv:SP Problem

Postades av 2006-03-29 10:48:45 - Gert Lindholm

Här är min SP

CREATE PROCEDURE dbo.Lager 
	
	
	@BenamningVal nvarchar(50),
	@FargVal nvarchar(50)

	AS
	SET NOCOUNT ON;
	
	SELECT ArtNr, Benamning,Storlek,Farg,Lager FROM LagerSaldo 
	WHERE Benamning = @BenamningVal AND Farg = @FargVal

GO



Svara

Sv: SP Problem

Postades av 2006-03-29 11:07:27 - Marcus Gus

Behåll SP'n som den är. I din dataview tar du hand om att omvandla lagervärdet till text istället, det hör inte hemma i databasen. Då kan du dessutom lägga till en massa tevliga funktioner, tex att varna för lågt lagervärde (tex om lager < 5 eller nåt sånt).

Om jag har förstått rätt så vill du göra en dataview utifrån din SP, och däromvandla alla rader som har Lager = 0 till texten "Bestl...." och det skall du inte göra i SP utan det ser jag som rent presentationsjunk.


Svara

Sv:SP Problem

Postades av 2006-03-29 11:12:34 - Gert Lindholm

Har du ett lite exempel på hur jag gör det?


Svara

Sv: SP Problem

Postades av 2006-03-29 13:58:58 - Marcus Gus

Typ....

autogeneratecolumns sätts till false. Skapa kolumnerna med kod, skapa en user kolumn som ärver från TemplateField för Lagersaldokolmumnen och gör en override på FormatDataValue där du tittar på värdet och skriver ut värdet om det är > 0 och annars skriver du ut "Beställ....".

I korta drag, har inte tid mer mer just nu.... :-(


Svara

Sv: SP Problem

Postades av 2006-03-31 11:13:33 - Göran Roseen

Jag håller också med om att bya ut noll mot en text inte hör hemma i SP:n.

Här är ett lite naivt förslag, helt otestat.
Din GridView måste sättas att kasta eventet RowDataBound.
Den anropas för varje rad som ska läggas ut, och där kan du sedan manipulera datat.

Googla på "GridView RowDataBound" så hittar du mycket om detta.


protected void GridView1_RowDataBound(object sender,
GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
int unitsInStock =
Convert.ToInt32(System.Web.UI.DataBinder.Eval(e.Row.DataItem,
"Lager"));
if (unitsInStock == 0)
e.Row.Cells[COLUMN_INDEX_LAGER].Text = "Beställningsvara";
}
}


Svara

Nyligen

  • 14:24 CBD regelbundet?
  • 14:23 CBD regelbundet?
  • 14:22 Har du märkt några verkliga fördel
  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 617
27 953
271 709
5 744
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies