Sql toplu hareket görenleri kasmadan silme

declare @counter int
declare @numOfRecords int
declare @batchsize int




set @numOfRecords = 700924 --burdaki rakam databasei acip tables yazisini secip f7 basinca rowcountu en cok olan rakam

set @counter = 0
set @batchsize = 2500

set rowcount @batchsize
while @counter < (@numOfRecords/@batchsize) +1
begin
set @counter = @counter + 1
delete Erp_InventoryReceiptItem

update Erp_Invoice set InventoryReceiptId = null

update Erp_InventoryReceiptAttachment set  InventoryReceiptId = null

delete Erp_InventoryReceiptAttachment

delete Erp_InvoiceAttachment

delete Erp_WorkOrderProduction
UPDATE  Erp_InventoryReceiptItem set InventoryReceiptId=null
delete Erp_InventoryReceipt

update Erp_InventoryReceipt set InvoiceId=null
delete Erp_Invoice

delete Erp_BankAccountTotal

delete Erp_BankCredit
update Erp_CurrentAccountReceipt set BankReceiptId=null
delete Erp_BankReceiptItem

update Erp_ChequeReceipt set BankReceiptId=null

delete Erp_ChequeReceiptItem

delete Erp_ChequeReceiptAttachment

delete Erp_ChequeReceipt

delete Erp_BankReceiptAttachment

delete Erp_BankReceipt

delete Erp_CashTotalItem

delete Erp_CashTotal

delete Erp_Cheque

delete Erp_OrderReceiptItem

delete Erp_OrderReceiptAttachment

delete Erp_OrderReceipt

delete Erp_ContractItem

delete Erp_ContractAttachment

delete Erp_Contract

update Erp_InventoryReceipt set CurrentAccountReceiptId = null
delete Erp_CurrentAccountReceiptItem

delete Erp_CurrentAccountReceiptAttachment

delete Erp_CurrentAccountReceipt

delete Erp_CurrentAccountTotal

delete Erp_QuotationReceiptItem

delete Erp_QuotationReceiptAttachment

delete Erp_QuotationReceipt

delete Erp_DemandReceiptItem

delete Erp_DemandReceiptAttachment

delete Erp_DemandReceipt

delete Erp_WorkOrderItem

delete Erp_WorkOrderAttachment

delete Erp_WorkOrderExplanation

delete Erp_WorkOrder

delete Erp_GLReceiptItem
update Erp_InventoryReceipt set GLReceiptId=null

delete Erp_GLReceipt

Delete Erp_InventoryTotal

delete Erp_ReceiptPaymentItem

delete Meta_ForexRate

delete Erp_ServiceTotal

Delete Erp_GLAccountTotal

delete Erp_BankAccountTotal
update Erp_InventoryReceipt set PosReceiptId=null
delete erp_pos
delete Erp_InventoryReceipt
delete RPL_TaskTarget
delete Rpl_TaskItem
delete RPL_Task
delete Rpl_Xref
delete [LiveHareketler].[dbo].[Replication]
end
set rowcount 0

truncate table Log_Transaction

shrink işlemi:
USE LiveHareketler;
GO
ALTER DATABASE LiveHareketler
SET RECOVERY SIMPLE;
GO

--Datadakı log dosyasını shrınk yap yani database sağ tıkla task shrink files log->reorganize page 0 ve tamam ve sonrasındada yine databasee sağ tık task shrink database ok

ALTER DATABASE LiveHareketler
SET RECOVERY FULL;
GO

visual studio asp datasource olarak xmli kullanmak

new empty web project
insert new web page adı index.aspx
insert new item xml
içine :

  <Student
    StudentID=”1″
    FirstName=”A”
    LastName=”AA”
    TotalMarks=”100″>
 
  <Student
    StudentID=”2″
    FirstName=”B”
    LastName=”BB”
    TotalMarks=”200″>
 
  <Student
    StudentID=”3″
    FirstName=”C”
    LastName=”CC”
    TotalMarks=”500″>
 
  <Student
    StudentID=”4″
    FirstName=”D”
    LastName=”DD”
    TotalMarks=”700″>
 

ve gridview at ve datasource xmlden xml dosyasını seç

alastyr plesk windows hostinge pcdeki sql serverden baglanma

once pleski acip sol tarafdan databesisden yeni kullanici yarat
ms sql secili olsun allow remote connections from secip altina who.isden ipni yaz

daha sonra database yeni database server sql server

sql serverede
server name sadece ornekserver.com yazilmasi yeterli
login pleskte database kısmında user managementta yaratilan kullanici ve parola

——————-
visual studio asp proje deploy,
pleske visual studio aspxlerin projelerini ataiblmek icin alastyre pleskte web deployu aktif etmelerini soyle.
bu tarz link mail atacaklar sana https://mywebsite.xyz:8172/msdeploy.axd?site=mywebsite.xyz
bunu visual studioda solutiona sag tikla publishden web deployu secerek.

server: https://mywebsite.xyz:8172/msdeploy.axd?site=mywebsite.xyz
site: mywebsite.xyz/sw/test
user name:mywebsite (hostu alirken attiklari kullanici adi)
password:parola (hostu alirken attiklari kullanici adi)
destination url:mywebsite.xyz/sw/test

Live Hareket Goren istenmeyen malzemeleri toplu olarak sqlden silme

Silinmesi isdenilen malzemelerin recidleri () lerin icine yazilir




--update Erp_InventoryPriceList set UnitSetItemId = null where InventoryId in
--()

--delete Erp_InventoryPriceList where InventoryId in
--()

--delete Erp_RecipeItem from Erp_RecipeItem RI 
--where RecipeId = (Select RecId from Erp_Recipe R where R.RecId = RI.RecipeId and R.InventoryId in
--()
--)

--delete Erp_Recipe  where InventoryId in
--()

--update Erp_Inventory Set RecipeUnitItemId = null where RecId in
--()

--update Erp_InventoryUnitItemSize set InventoryId = null where InventoryId in
--()

--delete Erp_InventoryUnitItemSize where InventoryId in
--()

--delete Erp_InventoryBarcode where InventoryId in
--()

--delete Erp_InventoryWarehouse where InventoryId in
--()

--delete Erp_Project where InventoryId in
--()

--delete Erp_FixedAssetDepreciation where InventoryId in
--()

--delete Erp_InventoryExplanation where InventoryId in
--()

--delete Erp_InventoryAlternative  where InventoryId in
--()

--delete Erp_FixedAssetExpense  where InventoryId in
--()

--delete Erp_InventoryAttachment where InventoryId in
--()

--delete Erp_InitialCostItem from Erp_InitialCostItem IC 
--where InitialCostId = (Select RecId from Erp_InitialCost I where I.RecId = IC.InitialCostId and I.InventoryId in
--()
--)

--delete Erp_InitialCost where InventoryId in
--()

--delete Erp_RecipeItem where InventoryId in
--()

--delete Erp_RouteItem from Erp_RouteItem RI where RouteId = (select RecId from Erp_Route R where RI.RouteId=R.RecId and R.InventoryId in
--()
--)

--delete Erp_Route where InventoryId in
--()

--delete Erp_Inventory where RecId in
--()



Sentez Live Dev – Sql Queryden Hareketlerin Silinmesi

Aşağıdaki sorgu liveda (peşin satışsız,ncrsız) kartlar dışında hareketleri siler:(malzeme fişleri ,irsaliyeler,faturalar,teklifler,sipariş,muhasebe fişi,banka çek fişleri).
Sildikten sonra shrink yapılmalı aşağıda nasıl yapıldığı anlatılmıştır.Yaklaşık 14 gblık datayı 700mba düşürdü.

 

 

 

delete Erp_InventoryReceiptItem
update Erp_Invoice set InventoryReceiptId = null
update Erp_InventoryReceiptAttachment set  InventoryReceiptId = null
delete Erp_InventoryReceiptAttachment
delete Erp_InvoiceAttachment
delete Erp_WorkOrderProduction
delete Erp_InventoryReceipt
delete Erp_Invoice
delete Erp_BankAccountTotal
delete Erp_BankCredit
delete Erp_BankReceiptItem
update Erp_ChequeReceipt set BankReceiptId=null
delete Erp_ChequeReceiptItem
delete Erp_ChequeReceiptAttachment
delete Erp_ChequeReceipt
delete Erp_BankReceiptAttachment
delete Erp_BankReceipt
delete Erp_CashTotalItem
delete Erp_CashTotal
delete Erp_Cheque
delete Erp_OrderReceiptItem
delete Erp_OrderReceiptAttachment
delete Erp_OrderReceipt
delete Erp_ContractItem
delete Erp_ContractAttachment
delete Erp_Contract
delete Erp_CurrentAccountReceiptItem
delete Erp_CurrentAccountReceiptAttachment
delete Erp_CurrentAccountReceipt
delete Erp_CurrentAccountTotal
delete Erp_QuotationReceiptItem
delete Erp_QuotationReceiptAttachment
delete Erp_QuotationReceipt
delete Erp_DemandReceiptItem
delete Erp_DemandReceiptAttachment
delete Erp_DemandReceipt
delete Erp_WorkOrderItem
delete Erp_WorkOrderAttachment
delete Erp_WorkOrderExplanation
delete Erp_WorkOrder
delete Erp_GLReceiptItem
delete Erp_GLReceipt
Delete Erp_InventoryTotal
delete Erp_ReceiptPaymentItem
delete Meta_ForexRate
delete Erp_ServiceTotal
Delete Erp_GLAccountTotal
delete Erp_BankAccountTotal
truncate table Log_Transaction

shrink işlemi:
USE LiveHareketler;
GO
ALTER DATABASE LiveHareketler
SET RECOVERY SIMPLE;
GO

--Datadakı log dosyasını shrınk yap yani database sağ tıkla task shrink files log->reorganize page 0 ve tamam ve sonrasındada yine databasee sağ tık task shrink database ok

ALTER DATABASE LiveHareketler
SET RECOVERY FULL;
GO

Laravel Php QuickAdmin Github

https://github.com/LaravelDaily/quickadmin

c:\wamp64\www icine LaravelDaily klasor yarat not php 7 ve ustu olmalı systen enviromant path..
eğer pcde hem iis hem wamp kullanıyorsun portlar cakisacak wampin portunu deis

C:\wamp64\bin\apache\apache2.4.35\conf\httpd.conf
Listen 0.0.0.0:80>>Listen 0.0.0.0:8081
Listen [::0]:80>>Listen [::0]:8081

c:\wamp64\www icine LaravelDaily klasor yarat
ve cmdde oraya git
composer global require laravel/installer
composer create-project laravel/laravel QuickAdmin –prefer-dist

cd QuickAdmin
composer clear-cache
composer require laraveldaily/quickadmin

open;
C:\wamp64\www\LaravelDaily\QuickAdmin\config\app.php

in the $providers array;
Laraveldaily\Quickadmin\QuickadminServiceProvider::class,

C:\wamp64\www\LaravelDaily\QuickAdmin\.env
*database connection is required. Check your .env file
DB_CONNECTION=mysql

DB_HOST=localhost

DB_PORT=3306

DB_DATABASE=quickadmin

DB_USERNAME=root

DB_PASSWORD=

———————
C:\wamp64\www\LaravelDaily\QuickAdmin\app\Providers\AppServiceProvider.php dosyasını duzenle
use Illuminate\Support\Facades\Schema;
public function boot()
    {
 Schema::defaultStringLength(191);
}
——————
php artisan quickadmin:install
kullanıcı adı eposta sifre belirle
——————–
C:\wamp64\www\LaravelDaily\QuickAdmin\app\Http\Kernel.php
bu kismin icine asagidakini ekle protected $routeMiddleware = [
‘role’ => \Laraveldaily\Quickadmin\Middleware\HasPermissions::class,

————–
datatablellarda export etmesini isdersen : bu dosyayı bul ekle
C:\wamp64\www\LaravelDaily\QuickAdmin\resources\views\admin\partials\javascripts.blade.php

https://cdn.datatables.net/buttons/1.5.2/js/dataTables.buttons.min.js 
https://cdn.datatables.net/buttons/1.5.2/js/buttons.flash.min.js 
https://cdnjs.cloudflare.com/ajax/libs/jszip/3.1.3/jszip.min.js 
https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.36/pdfmake.min.js 
https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.36/vfs_fonts.js 
https://cdn.datatables.net/buttons/1.5.2/js/buttons.html5.min.js 
https://cdn.datatables.net/buttons/1.5.2/js/buttons.print.min.js 

ve bu boyle olsun
    $(‘#datatable’).dataTable( {
        “language”: {
            “url”: “{{ trans(‘quickadmin::strings.datatable_url_language’) }}”
        },
        dom: ‘Bfrtip’
    });
—————
dili türkçeleştirmek için bu dosyadan:C:\wamp64\www\LaravelDaily\QuickAdmin\resources\lang\vendor\laraveldaily\en\admin.php
—————–
eger menuden fazlaliklari kaldirmak isdersen dosyayı düzenle : C:\wamp64\www\LaravelDaily\QuickAdmin\resources\views\admin\partials\sidebar.blade.php

son olarak
php artisan serve ve http://127.0.0.1:8000/admin git

Sentez Live Erp Kesin Yevmiyeyi Silme

OIuşan Sorunlar:
– Kesin Yevmiye Tarihinden Önce İşlem Yapılamaz .
– entegrasyon fişi yevmiye madde numarasına sahip. Bu fiş üzerinden işlem yapamazsınız .

select RegBookNo,  * from Erp_GLReceipt –RegBookNo boş deilse yevmiye oluşturulmuş demektir

select * from Erp_GLRegBook –yevmiye oluşan fiş

update  Erp_GLReceipt set RegBookNo = null –yevmiye oluştuysa sil

KanBoard Pano , Database ve Mail Yollama Ayarları

https://github.com/kanboard/kanboard indirip ftpye at direk çalışır…
Aşağıdaki sorguda Panoyu türkçe yapabilirsin. Ama database silip baştan yükleyince sıfırlanır.

update `columns` set title =’On Hazirlik’ WHERE title =’Backlog’;
update `columns` set title =’Yapilacaklar’ WHERE title =’Ready’;
update `columns` set title =’Tamamlandi’ WHERE title =’Done’;
update `columns` set title =’Yapiliyor’ WHERE title =’Work in progress’;
————————————————

Eğer Backlogun hiç cıkmasını isdemezsen
delete from `columns` WHERE title =’tBacklog’

—————————————————
NOT TÜRKÇE KARAKTER KULLANMA
Bir sonraki yeni proje yaratmalarında backlog otomatik olarak gelmesin ve diğer panolar türkçe olarak gelsin isdeniyorusa /app/Model/BoardModel.php içindeki return array(t(‘Backlog’), t(‘Ready’), t(‘Work in progress’), t(‘Done’)); satırını şu şekilde yap
return array( t(‘Yapilacaklar’), t(‘Yapiliyor’), t(‘Tamamlandi’));

————–

Eğer Database mail ayarlarını yapacaksan ana roottaki config.default.php adını config.php yapip değerlerini vermelisin ornegin default sqldb veritabanı olarak kullanılır ama mysql kullanılması isdeniyorsa ayarının config.php’nin içinden yapılması gerekir. Mail ayarınında aynı yerden yapılması gerekir(gönderen maili).

MYSQL Ayar örneği;
// Sendmail command to use when the transport is “sendmail”
define(‘MAIL_SENDMAIL_COMMAND’, ‘/usr/sbin/sendmail -bs’);

// Run automatically database migrations
// If set to false, you will have to run manually the SQL migrations from the CLI during the next Kanboard upgrade
// Do not run the migrations from multiple processes at the same time (example: web page + background worker)
define(‘DB_RUN_MIGRATIONS’, true);

// Database driver: sqlite, mysql or postgres (sqlite by default)
define(‘DB_DRIVER’, ‘mysql’);

// Mysql/Postgres username
define(‘DB_USERNAME’, ‘pnpwebdisign_trl’);

// Mysql/Postgres password
define(‘DB_PASSWORD’, ’12ssssw’);

// Mysql/Postgres hostname
define(‘DB_HOSTNAME’, ‘localhost’);

// Mysql/Postgres database name
define(‘DB_NAME’, ‘pnpwebdisign_trl’);

// Mysql/Postgres custom port (null = default port)
define(‘DB_PORT’, null);

// Mysql SSL key
define(‘DB_SSL_KEY’, null);
————————

Gmailden Mail Yollama Ayarı;

// Enable/disable email configuration from the user interface
define(‘MAIL_CONFIGURATION’, true);

// E-mail address used for the “From” header (notifications)
define(‘MAIL_FROM’, ‘pxxxx@gmail.com’);

// Mail transport available: “smtp”, “sendmail”, “mail” (PHP mail function), “postmark”, “mailgun”, “sendgrid”
define(‘MAIL_TRANSPORT’, ‘smtp’);

// SMTP configuration to use when the “smtp” transport is chosen
define(‘MAIL_SMTP_HOSTNAME’, ‘smtp.gmail.com’);
define(‘MAIL_SMTP_PORT’, 465);
define(‘MAIL_SMTP_USERNAME’, ‘pxxxx@gmail.com’);
define(‘MAIL_SMTP_PASSWORD’, ‘123sxe’);
define(‘MAIL_SMTP_ENCRYPTION’, ‘ssl’); // Valid values are “null”, “ssl” or “tls”

// Sendmail command to use when the transport is “sendmail”
define(‘MAIL_SENDMAIL_COMMAND’, ‘/usr/sbin/sendmail -bs’);

———————
Notificationlar mail olarak giderken mail başlığında admin via kanboard vb… yazar onu deiştirmek için /trello/1/app/Core/Mail/client.phpde

$author = e('%s via Kanboard', $this->helper->user->getFullname()); 

$author = e('%s Tarafından Gönderilen Bilgilendirme', $this->helper->user->getFullname()); 

Sql Server Shrink Database and Log



--log dosyasını bul     
 SELECT name FROM sys.master_files WHERE type_desc = 'LOG' and physical_name like '%Jam%'




        ALTER DATABASE DevJamieS
        SET RECOVERY SIMPLE
        GO
        DBCC SHRINKFILE (DevJamieS_log, 1)
        GO
        ALTER DATABASE DevJamieS
        SET RECOVERY FULL

------------

USE LKSDB;
GO
ALTER DATABASE LKSDB
SET RECOVERY SIMPLE;
GO

--datadakı log dosyasını shrınk yap

ALTER DATABASE LKSDB
SET RECOVERY FULL;
GO
EXEC sp_msforeachdb ' Declare @logname varchar(500) = '''';

IF ''?'' not in (''tempdb'',''master'',''msdb'',''model'',''Reportserver'',''ReportserverTempDB'') 
begin 
 
	set @logname = (Select name From [?].Sys.database_files where  type=1) 

	EXEC(''Use [?];
	ALTER DATABASE ?
	SET RECOVERY SIMPLE; 
		DBCC SHRINKFILE (['' + @logname + ''] ,1)
		 
		ALTER DATABASE ?
		SET RECOVERY FULL
		'')  
end 
'