ورود

View Full Version : مبتدی: کد کم کردن تعداد کالای فروخته شده به صورت اتوماتیک از انبار



Miryam
چهارشنبه 16 شهریور 1390, 08:58 صبح
سلام
من یه فرم فروش دارم به کدی نیاز دارم که وقتی کالایی رو می فروشم و ثبت می کنم تعداد کالا به صورت اتوماتیک ازتعدادکالای موجود در انبار کم بشه و مجبور نباشم اینکارو دستی انجام بدم تا موجودی انبارم همیشه به روز باشه
لطفا راهنماییم کنید:افسرده:

Miryam
پنج شنبه 17 شهریور 1390, 07:21 صبح
سلام کسی نیست راهنماییم کنه لطفا کمک کنید

Mani_rf
پنج شنبه 17 شهریور 1390, 13:07 عصر
برای این کار شما باید همیشه تعداد موجودر در انبار را از تعداد فروخته شده کثر کنید تا موجودی به دست بی آید. یک تابع برای این کار بنویسید و در مواقع لزوم آن را فراخانی کنید.

Miryam
جمعه 18 شهریور 1390, 09:03 صبح
مرسی میشه لطف کنید یه نمونه واسم بنویسید البته اگه زحمتی نیست پروژه پایانیم باید تا آخر شهریور تحویلش بدم هنوز خیلی عقبم.

Mani_rf
شنبه 19 شهریور 1390, 08:21 صبح
نه؛ فقط میتونم راهنماییتون کنم.

Miryam
شنبه 19 شهریور 1390, 08:46 صبح
اوکی مرسی پس لطفا راهنمایی کنید این تابع چطوری تعریف کنم

ebraham
شنبه 19 شهریور 1390, 21:46 عصر
خوب مگه فيلد موجودي فقط يك مقدار نداره مثلا 100 تا ؟ ميتونيد همزمان با زدن دكمه ثبت ، مقدار فيلد موجودي اتان را از جدول مربوطه بخوانيد و به تعدادي كه در فرم فروش وارد كرده ايد (البته نيازي هم به خواندن مجدد موجودي نيست زيرا شما يكبار اين كار را انجام داده ايد كه توانسته ايد فاكتور فروش صادر كنيد ميتوانيد با خواندن در مرتبه اول مقدار آنرا در يك متغير ثبت كنيد و مقدار فاكتور شده را از آن كسر كنيد) . (فرض كنيد در يك تكست باكس مقدار فروش را وارد ميكنيد) از موجودي اتان كم كنيد و با دستور آپديت جدولي را كه داراي فيلد موجودي ميباشد را به روز رساني كنيد .

Miryam
یک شنبه 20 شهریور 1390, 08:04 صبح
مرسی کد up date که استفاده میکنم مشکل داره
وقتی میخوام رکوردی رو به روز کنم که تنها یکی از فیلداش مشکل داره
(مثل اسم مشتری رو اشتباه ثبت کردم) مجبورم تمام فیلدارو دوباره بنویسم و از اول ثبت کنم کنم

nikita2011
یک شنبه 20 شهریور 1390, 14:57 عصر
دوست عزیز اگه ممکنه کد update که استفاده می کنی رو بنویس

ebraham
یک شنبه 20 شهریور 1390, 15:43 عصر
يكم واضح تر توضيح بده . شما ميتونيد فقط يك فيلد را آپديت كني يا هر چند تا كه دلت خواست . ببين بايد براي هر كدوم از فيلدها بايد يك دستور آپديت جداگانه بنويسي به اي ن شكل : PupModule.sqlcon.Open()
Dim cmd15 As New SqlCommand
Dim cmd16 As New SqlCommand
cmd15 = New SqlCommand("update personal set stateus=N'خاتمه کار' where family=N'" & Label8.Text & "' and code='" & Label12.Text & "'", PupModule.sqlcon)
cmd16 = New SqlCommand("update personal set password='" & vbNullString & "'where family=N'" & Label8.Text & "'", PupModule.sqlcon)
cmd15.ExecuteNonQuery()
cmd16.ExecuteNonQuery()

Miryam
چهارشنبه 23 شهریور 1390, 15:16 عصر
Private Sub Btnupdate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btnupdate.Click
Dim a As MsgBoxResult
a = MsgBox(" ", MsgBoxStyle.OkCancel)
Dim con As New SqlConnection
Dim cmd As New SqlCommand
con.ConnectionString = "Data source=VIRTUALXP-28481;Initial catalog=Foroshgah;Integrated security=True"
cmd.CommandText = "UPDATE tblforosh set nummoshtari='" & Trim(Label1.Text) & "',numkala='" & Trim(Txtnumkala.Text) & "',CodeKala='" & Trim(TxtCodeKala.Text) & "',numberK='" & Trim(TxtnumberK.Text) & "', price='" & Trim(Txtprice.Text) & "', factor='" & Trim(Txtfactor.Text) & "',Tarikh='" & Trim(TxtTarikh.Text) & "',MablghNaghd='" & Trim(TxtMablghNaghd.Text) & "',baghi='" & Trim(Txtbaghi.Text) & "',pricekol='" & Trim(Txtpricekol.Text) & "' where CodeMoshtari=" & Trim(TxtCodeMoshtari.Text) & ""
cmd.Connection = con
con.Open()
cmd.ExecuteNonQuery()
con.Close()
If MessageBox.Show(" ", "", MessageBoxButtons.OK, MessageBoxIcon.Information) = Windows.Forms.DialogResult.Yes Then
End If
End
End Sub

armin8651
پنج شنبه 24 شهریور 1390, 19:33 عصر
اگه از پایگاه داده Sql server استفاده میکنید میتونید از تریگر از این کار استفاده کنید. یه تریگر بنویسید که وقتی چیزی فروخته شده موجودی رو به روز کنه

minaforotan
پنج شنبه 24 شهریور 1390, 22:41 عصر
ببین دوست عزیز فقط کافیه وقتی فاکتورت صادر شد جدول کالات رو آپدیت کنی البته با این دستور
ad.UpdateCommand.CommandText = "UPDATE kala SET mojodie_anbar = kala.mojodie_anbar - aghlame_factor.tedad FROM kala INNER JOIN aghlame_factor ON kala.id_kala = aghlame_factor.id_kala"

mojodie_anbar=فیلد موجودی انبار از جدول کالا
aghlame_factor.tedad =تعداد کالای ذخیره شده در جدول اقلام فاکتور

البته من نمیدونم چه طور فاکتور روثبت میکنی اگه اول تو جدول فرعی ثبتش میکنی که کد بالا حله اما اگه مستقیم وارد جدول اصلیت میشه فقط به کد بالا یه شرط اضافه کن که از جدول اقلام فاکتور فقط اقلام مربوط به این فاکتور رو بخونه