Июль 2020

Архивирование лог файлов Сбербанка Бизнес Онлайн-УПШ (СББОЛ-УПШ)

Архивирование лог файлов унифицированного платёжного шлюза https://www.sberbank.ru/ru/legal/bankingservice/upg

@echo off
setlocal enabledelayedexpansion
set now=%DATE: =0% %TIME: =0%

set d=%date:~0,2%
set m=%date:~3,2%
set y=%date:~6,4%

if %d:~0,1%==0 set d=%d:~1%
if %m:~0,1%==0 set m=%m:~1%

set /a feb=y%%4
if %feb%==0 (set feb=29) else (set feb=28)

set /a tok=m-1
if %tok%==0 set tok=12
for /f «tokens=%tok%» %%i in («31 %feb% 31 30 31 30 31 31 30 31 30 31») do (
set /a d-=1
if !d!==0 (
set d=%%i
set m=%tok%
if !m!==12 set /a y-=1
)
)

set d=0%d%
set m=0%m%
set yesterday=%y%_%m:~-2%_%d:~-2%

echo %yesterday%

for /f «tokens=1-7 delims=/-:., » %%a in ( «%now%» ) do (
set now=%%c%%b%%a
)

rem log_ConnectUPSH

«C:\Program Files\7-Zip\7z.exe» a -ssw -mx9 -r0 C:\ARCHIVE\log_ConnectUPSH\connectUPSH_%yesterday% C:\SBBOL_20180216\log_ConnectUPSH\connectUPSH_%yesterday%.txt
del C:\SBBOL_20180216\log_ConnectUPSH\connectUPSH_%yesterday%.txt
for /L %%i in (0,1,100) do if exist C:\SBBOL_20180216\log_ConnectUPSH\connectUPSH_%yesterday%.%%i.txt («C:\Program Files\7-Zip\7z.exe» a -ssw -mx7 -r0 C:\ARCHIVE\log_ConnectUPSH\connectUPSH_%yesterday%.%%i C:\SBBOL_20180216\log_ConnectUPSH\connectUPSH_%yesterday%.%%i.txt)
for /L %%i in (0,1,100) do if exist C:\SBBOL_20180216\log_ConnectUPSH\connectUPSH_%yesterday%.%%i.txt (del C:\SBBOL_20180216\log_ConnectUPSH\connectUPSH_%yesterday%.%%i.txt)

rem log_DataToReturn

«C:\Program Files\7-Zip\7z.exe» a -ssw -mx9 -r0 C:\ARCHIVE\log_DataToReturn\dataToReturn_%yesterday% C:\SBBOL_20180216\log_DataToReturn\dataToReturn_%yesterday%.txt
del C:\SBBOL_20180216\log_DataToReturn\dataToReturn_%yesterday%.txt
for /L %%i in (0,1,100) do if exist C:\SBBOL_20180216\log_DataToReturn\dataToReturn_%yesterday%.%%i.txt («C:\Program Files\7-Zip\7z.exe» a -ssw -mx7 -r0 C:\ARCHIVE\log_dataToReturn\log_DataToReturn_%yesterday%.%%i C:\SBBOL_20180216\log_DataToReturn\dataToReturn_%yesterday%.%%i.txt)
for /L %%i in (0,1,100) do if exist C:\SBBOL_20180216\log_DataToReturn\dataToReturn_%yesterday%.%%i.txt (del C:\SBBOL_20180216\log_DataToReturn\dataToReturn_%yesterday%.%%i.txt)

rem log_Exceptions

«C:\Program Files\7-Zip\7z.exe» a -ssw -mx9 -r0 C:\ARCHIVE\log_Exceptions\error_%yesterday% C:\SBBOL_20180216\log_Exceptions\error_%yesterday%.txt
del C:\SBBOL_20180216\log_Exceptions\error_%yesterday%.txt
for /L %%i in (0,1,100) do if exist C:\SBBOL_20180216\log_Exceptions\error_%yesterday%.%%i.txt («C:\Program Files\7-Zip\7z.exe» a -ssw -mx7 -r0 C:\ARCHIVE\log_Exceptions\error_%yesterday%.%%i C:\SBBOL_20180216\log_Exceptions\error_%yesterday%.%%i.txt)
for /L %%i in (0,1,100) do if exist C:\SBBOL_20180216\log_Exceptions\error_%yesterday%.%%i.txt (del C:\SBBOL_20180216\log_Exceptions\error_%yesterday%.%%i.txt)

rem log_IncomingData

«C:\Program Files\7-Zip\7z.exe» a -ssw -mx9 -r0 C:\ARCHIVE\log_IncomingData\incommingData_%yesterday% C:\SBBOL_20180216\log_IncomingData\incommingData_%yesterday%.txt
del C:\SBBOL_20180216\log_IncomingData\incommingData_%yesterday%.txt
for /L %%i in (0,1,100) do if exist C:\SBBOL_20180216\log_IncomingData\incommingData_%yesterday%.%%i.txt («C:\Program Files\7-Zip\7z.exe» a -ssw -mx7 -r0 C:\ARCHIVE\log_IncomingData\incommingData_%yesterday%.%%i C:\SBBOL_20180216\log_IncomingData\incommingData_%yesterday%.%%i.txt)
for /L %%i in (0,1,100) do if exist C:\SBBOL_20180216\log_IncomingData\incommingData_%yesterday%.%%i.txt (del C:\SBBOL_20180216\log_IncomingData\incommingData_%yesterday%.%%i.txt)

rem log_SendedToSbbol

«C:\Program Files\7-Zip\7z.exe» a -ssw -mx9 -r0 C:\ARCHIVE\log_SendedToSbbol\SendedToSbbol_%yesterday% C:\SBBOL_20180216\log_SendedToSbbol\SendedToSbbol_%yesterday%.txt
del C:\SBBOL_20180216\log_SendedToSbbol\SendedToSbbol_%yesterday%.txt
for /L %%i in (0,1,100) do if exist C:\SBBOL_20180216\log_SendedToSbbol\SendedToSbbol_%yesterday%.%%i.txt («C:\Program Files\7-Zip\7z.exe» a -ssw -mx7 -r0 C:\ARCHIVE\log_SendedToSbbol\SendedToSbbol_%yesterday%.%%i C:\SBBOL_20180216\log_SendedToSbbol\SendedToSbbol_%yesterday%.%%i.txt)
for /L %%i in (0,1,100) do if exist C:\SBBOL_20180216\log_SendedToSbbol\SendedToSbbol_%yesterday%.%%i.txt (del C:\SBBOL_20180216\log_SendedToSbbol\SendedToSbbol_%yesterday%.%%i.txt)

BPMS + RPA: новый уровень автоматизации бизнеса

Как объединить людей и роботов против растущих издержек и падающей эффективности

Может ли ваша компания довести эффективность работы до идеала?

Большая часть потерь эффективности происходят на стыке бизнес-процессов, меньшая связана с рутинной и ошибками сотрудников. При этом обилие ИТ-решений компании складывается со временем в лоскутное одеяло. Множатся системы и добавляются инструменты. В результате части такого одеяла либо расходятся, либо требуют огромных ресурсов для интеграции и поддержания работы.

ELMA предлагает комплексное решение для автоматизации бизнес-процессов.

Приглашаем вас на бесплатный вебинар, где мы расскажем о новых возможностях синергии BPMS и RPA для бизнеса.

https://elma-rpa.ai/ru/meeting/bpms-rpa

Небольшой модуль авторизации на .Net Framework

Пароль сохраняется в base64, база данных MSSQL

namespace authWF
{
public partial class Form1 : Form
{
public static string BD{ get; set; }
public static string login { get; set; }

public Form1()
{
InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)
{
login = textBox1.Text;
BD = «Users»;
string password = textBox2.Text;
if (CheckPswd() == password)
{
Form2 form2 = new Form2();
form2.Show();
}

else
{
label3.Visible = true;
}

}

private string CheckPswd()
{
SqlConnection conn = DBUtils.GetDBConnection();
conn.Open();

SqlCommand sqlCmd = new SqlCommand();
sqlCmd.Connection = conn;
sqlCmd.CommandType = CommandType.Text;
sqlCmd.CommandText = $»Select Password FROM {BD} WHERE Login='{login}'»;
string passfrombase = Base64Decode(Convert.ToString(sqlCmd.ExecuteScalar()));
conn.Close();
return passfrombase;

}

public static string Base64Decode(string base64EncodedData)
{
var base64EncodedBytes = System.Convert.FromBase64String(base64EncodedData);
return System.Text.Encoding.UTF8.GetString(base64EncodedBytes);
}

private void Form1_Load(object sender, EventArgs e)
{

}

private void label3_Click(object sender, EventArgs e)
{

}

private void label1_Click(object sender, EventArgs e)
{

}
}
}

Редактирование информации- профиля

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace authWF
{
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)
{

Users.Name = textBox1.Text;
Users.Surname = textBox2.Text;
Users.Patronymic = textBox3.Text;
Users.Date = textBox11.Text;
Users.Position = textBox4.Text;
Users.Mail = textBox5.Text;
Users.Login = textBox8.Text;
Users.Views = textBox7.Text;
Users.Accesses = textBox6.Text;

if (textBox9.Text != textBox10.Text)
{
textBox9.BackColor = Color.Red;
textBox10.BackColor = Color.Red;
label9.Visible = true;
label13.Visible = true;
label9.Text = «Пароли не равны или не введены»;
label13.Text = «Пароли не равны или не введены»;
}
else
{
label9.Visible = false;
label13.Visible = false;
textBox9.BackColor = Color.White;
textBox10.BackColor = Color.White;
Users.Password = Base64Encode(textBox9.Text);
Users.PasswordRepeat = Base64Encode(textBox10.Text);
// string login = Form1.login;
string BD = Form1.BD;

WriteToBD(BD,Users.Name, Users.Surname, Users.Patronymic, Users.Date, Users.Position, Users.Mail, Users.Login, Users.Views, Users.Accesses, Users.Password);
}
}

private void WriteToBD(string BD, string name, string surname, string patronymic, string date, string position, string mail, string login, string views, string accesses, string password)
{
try
{
SqlConnection conn = DBUtils.GetDBConnection();
conn.Open();

SqlCommand sqlCmd = new SqlCommand();
sqlCmd.Connection = conn;
sqlCmd.CommandType = CommandType.Text;
sqlCmd.CommandText = $»INSERT INTO {BD}(Name,Surname,Patronymic,Date,Login,Password,Mail,Accesses,Views,Position) VALUES (‘{name}’,'{surname}’,'{patronymic}’,'{date}’,'{login}’,'{password}’,'{mail}’,'{accesses}’,'{views}’,'{position}’)»;
sqlCmd.ExecuteNonQuery();
conn.Close();
}
catch { }
finally
{
textBox1.Enabled=false;
textBox2.Enabled = false;
textBox3.Enabled = false;
textBox11.Enabled = false;
textBox4.Enabled = false;
textBox5.Enabled = false;
textBox6.Enabled = false;
textBox7.Enabled = false;
textBox8.Enabled = false;
textBox9.Enabled = false;
textBox10.Enabled = false;

}
}

public static string Base64Encode(string password)
{
var passwordinbase64 = System.Text.Encoding.UTF8.GetBytes(password);
return System.Convert.ToBase64String(passwordinbase64);
}

public void Form2_Load(object sender, EventArgs e)
{

}

private void редактированиеПрофиляToolStripMenuItem_Click(object sender, EventArgs e)
{

}

private void открытыеСчетаКомпанииToolStripMenuItem_Click(object sender, EventArgs e)
{

}

public void редактированиеПрофиляToolStripMenuItem_Click_1(object sender, EventArgs e)
{
SqlConnection conn = DBUtils.GetDBConnection();
conn.Open();

SqlCommand sqlCmd = new SqlCommand();
sqlCmd.Connection = conn;
sqlCmd.CommandType = CommandType.Text;
sqlCmd.CommandText = $»Select * FROM {Form1.BD} WHERE Login='{Form1.login}'»;
var reader = sqlCmd.ExecuteReader();
while (reader.Read())
{
textBox1.Text = reader.GetValue(1).ToString();
textBox2.Text = reader.GetValue(2).ToString();
textBox3.Text = reader.GetValue(3).ToString();
textBox11.Text = reader.GetValue(4).ToString();

textBox4.Text = reader.GetValue(10).ToString();

textBox5.Text = reader.GetValue(7).ToString();
textBox8.Text = reader.GetValue(5).ToString();

textBox6.Text = reader.GetValue(8).ToString();
textBox7.Text = reader.GetValue(9).ToString();

textBox9.Text = reader.GetValue(6).ToString();

}
conn.Close();
}

private void menuStrip1_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
{

}
}
}