From 2e2dc4eb8d78f7efeade8f8413ee5ceef32c904a Mon Sep 17 00:00:00 2001 From: Krzysztof Date: Wed, 14 Oct 2026 12:12:42 +0200 Subject: [PATCH] =?UTF-8?q?Stan=20pocz=C4=85tkowy:=20XL-API=2020251?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Projekt ImportDokMag w wersji korzystającej z XL-API 20251 (cdn_api20251.net.dll), z połączeniem do bazy źródłowej przez uwierzytelnianie Windows. Foldery .svn/ i Publikuj/ są poza repozytorium. Co-Authored-By: Claude Opus 5.5 --- .gitattributes | 63 + .gitignore | 369 ++ CDN.my_ImpDM_Src_20210729.sql | Bin 0 -> 18614 bytes DokumentyZrodlowe-DekretySkladowe.sql | 46 + DokumentyZrodlowe.sql | Bin 0 -> 18220 bytes DokumentyZrodlowe_old.sql | 64 + GenerowanieOpisuNoty.docx | Bin 0 -> 158725 bytes ImportDokMag.code-workspace | 14 + ImportDokMag.sln | 32 + ImportDokMag/App.config | 46 + ImportDokMag/DsMain.Designer.vb | 3412 +++++++++++++++++ ImportDokMag/DsMain.vb | 2 + ImportDokMag/DsMain.xsc | 9 + ImportDokMag/DsMain.xsd | 251 ++ ImportDokMag/DsMain.xss | 14 + ImportDokMag/FunkcjeXL.vb | 980 +++++ ImportDokMag/ImportDM.vb | 262 ++ ImportDokMag/ImportDokMag.vbproj | 246 ++ ImportDokMag/MainFrm.Designer.vb | 711 ++++ ImportDokMag/MainFrm.resx | 539 +++ ImportDokMag/MainFrm.vb | 532 +++ .../My Project/Application.Designer.vb | 44 + ImportDokMag/My Project/Application.myapp | 10 + ImportDokMag/My Project/AssemblyInfo.vb | 35 + ImportDokMag/My Project/Resources.Designer.vb | 63 + ImportDokMag/My Project/Resources.resx | 117 + ImportDokMag/My Project/Settings.Designer.vb | 192 + ImportDokMag/My Project/Settings.settings | 41 + ImportDokMag/cab.ico | Bin 0 -> 22498 bytes ImportDokMag/dlgKonfig.Designer.vb | 416 ++ ImportDokMag/dlgKonfig.resx | 120 + ImportDokMag/dlgKonfig.vb | 44 + Instalator/Instalator.vdproj | 2796 ++++++++++++++ Konta.sql | 17 + README.md | 1 + 35 files changed, 11488 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 CDN.my_ImpDM_Src_20210729.sql create mode 100644 DokumentyZrodlowe-DekretySkladowe.sql create mode 100644 DokumentyZrodlowe.sql create mode 100644 DokumentyZrodlowe_old.sql create mode 100644 GenerowanieOpisuNoty.docx create mode 100644 ImportDokMag.code-workspace create mode 100644 ImportDokMag.sln create mode 100644 ImportDokMag/App.config create mode 100644 ImportDokMag/DsMain.Designer.vb create mode 100644 ImportDokMag/DsMain.vb create mode 100644 ImportDokMag/DsMain.xsc create mode 100644 ImportDokMag/DsMain.xsd create mode 100644 ImportDokMag/DsMain.xss create mode 100644 ImportDokMag/FunkcjeXL.vb create mode 100644 ImportDokMag/ImportDM.vb create mode 100644 ImportDokMag/ImportDokMag.vbproj create mode 100644 ImportDokMag/MainFrm.Designer.vb create mode 100644 ImportDokMag/MainFrm.resx create mode 100644 ImportDokMag/MainFrm.vb create mode 100644 ImportDokMag/My Project/Application.Designer.vb create mode 100644 ImportDokMag/My Project/Application.myapp create mode 100644 ImportDokMag/My Project/AssemblyInfo.vb create mode 100644 ImportDokMag/My Project/Resources.Designer.vb create mode 100644 ImportDokMag/My Project/Resources.resx create mode 100644 ImportDokMag/My Project/Settings.Designer.vb create mode 100644 ImportDokMag/My Project/Settings.settings create mode 100644 ImportDokMag/cab.ico create mode 100644 ImportDokMag/dlgKonfig.Designer.vb create mode 100644 ImportDokMag/dlgKonfig.resx create mode 100644 ImportDokMag/dlgKonfig.vb create mode 100644 Instalator/Instalator.vdproj create mode 100644 Konta.sql create mode 100644 README.md diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..1ff0c42 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,63 @@ +############################################################################### +# Set default behavior to automatically normalize line endings. +############################################################################### +* text=auto + +############################################################################### +# Set default behavior for command prompt diff. +# +# This is need for earlier builds of msysgit that does not have it on by +# default for csharp files. +# Note: This is only used by command line +############################################################################### +#*.cs diff=csharp + +############################################################################### +# Set the merge driver for project and solution files +# +# Merging from the command prompt will add diff markers to the files if there +# are conflicts (Merging from VS is not affected by the settings below, in VS +# the diff markers are never inserted). Diff markers may cause the following +# file extensions to fail to load in VS. An alternative would be to treat +# these files as binary and thus will always conflict and require user +# intervention with every merge. To do so, just uncomment the entries below +############################################################################### +#*.sln merge=binary +#*.csproj merge=binary +#*.vbproj merge=binary +#*.vcxproj merge=binary +#*.vcproj merge=binary +#*.dbproj merge=binary +#*.fsproj merge=binary +#*.lsproj merge=binary +#*.wixproj merge=binary +#*.modelproj merge=binary +#*.sqlproj merge=binary +#*.wwaproj merge=binary + +############################################################################### +# behavior for image files +# +# image files are treated as binary by default. +############################################################################### +#*.jpg binary +#*.png binary +#*.gif binary + +############################################################################### +# diff behavior for common document formats +# +# Convert binary document formats to text before diffing them. This feature +# is only available from the command line. Turn it on by uncommenting the +# entries below. +############################################################################### +#*.doc diff=astextplain +#*.DOC diff=astextplain +#*.docx diff=astextplain +#*.DOCX diff=astextplain +#*.dot diff=astextplain +#*.DOT diff=astextplain +#*.pdf diff=astextplain +#*.PDF diff=astextplain +#*.rtf diff=astextplain +#*.RTF diff=astextplain diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..fe2cf0c --- /dev/null +++ b/.gitignore @@ -0,0 +1,369 @@ +## Ignore Visual Studio temporary files, build results, and +## files generated by popular Visual Studio add-ons. +## +## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore + +# User-specific files +*.rsuser +*.suo +*.user +*.userosscache +*.sln.docstates + +# User-specific files (MonoDevelop/Xamarin Studio) +*.userprefs + +# Mono auto generated files +mono_crash.* + +# Build results +[Dd]ebug/ +[Dd]ebugPublic/ +[Rr]elease/ +[Rr]eleases/ +x64/ +x86/ +[Ww][Ii][Nn]32/ +[Aa][Rr][Mm]/ +[Aa][Rr][Mm]64/ +bld/ +[Bb]in/ +[Oo]bj/ +[Oo]ut/ +[Ll]og/ +[Ll]ogs/ + +# Visual Studio 2015/2017 cache/options directory +.vs/ +# Uncomment if you have tasks that create the project's static files in wwwroot +#wwwroot/ + +# Visual Studio 2017 auto generated files +Generated\ Files/ + +# MSTest test Results +[Tt]est[Rr]esult*/ +[Bb]uild[Ll]og.* + +# NUnit +*.VisualState.xml +TestResult.xml +nunit-*.xml + +# Build Results of an ATL Project +[Dd]ebugPS/ +[Rr]eleasePS/ +dlldata.c + +# Benchmark Results +BenchmarkDotNet.Artifacts/ + +# .NET Core +project.lock.json +project.fragment.lock.json +artifacts/ + +# ASP.NET Scaffolding +ScaffoldingReadMe.txt + +# StyleCop +StyleCopReport.xml + +# Files built by Visual Studio +*_i.c +*_p.c +*_h.h +*.ilk +*.meta +*.obj +*.iobj +*.pch +*.pdb +*.ipdb +*.pgc +*.pgd +*.rsp +*.sbr +*.tlb +*.tli +*.tlh +*.tmp +*.tmp_proj +*_wpftmp.csproj +*.log +*.vspscc +*.vssscc +.builds +*.pidb +*.svclog +*.scc + +# Chutzpah Test files +_Chutzpah* + +# Visual C++ cache files +ipch/ +*.aps +*.ncb +*.opendb +*.opensdf +*.sdf +*.cachefile +*.VC.db +*.VC.VC.opendb + +# Visual Studio profiler +*.psess +*.vsp +*.vspx +*.sap + +# Visual Studio Trace Files +*.e2e + +# TFS 2012 Local Workspace +$tf/ + +# Guidance Automation Toolkit +*.gpState + +# ReSharper is a .NET coding add-in +_ReSharper*/ +*.[Rr]e[Ss]harper +*.DotSettings.user + +# TeamCity is a build add-in +_TeamCity* + +# DotCover is a Code Coverage Tool +*.dotCover + +# AxoCover is a Code Coverage Tool +.axoCover/* +!.axoCover/settings.json + +# Coverlet is a free, cross platform Code Coverage Tool +coverage*.json +coverage*.xml +coverage*.info + +# Visual Studio code coverage results +*.coverage +*.coveragexml + +# NCrunch +_NCrunch_* +.*crunch*.local.xml +nCrunchTemp_* + +# MightyMoose +*.mm.* +AutoTest.Net/ + +# Web workbench (sass) +.sass-cache/ + +# Installshield output folder +[Ee]xpress/ + +# DocProject is a documentation generator add-in +DocProject/buildhelp/ +DocProject/Help/*.HxT +DocProject/Help/*.HxC +DocProject/Help/*.hhc +DocProject/Help/*.hhk +DocProject/Help/*.hhp +DocProject/Help/Html2 +DocProject/Help/html + +# Click-Once directory +publish/ + +# Publish Web Output +*.[Pp]ublish.xml +*.azurePubxml +# Note: Comment the next line if you want to checkin your web deploy settings, +# but database connection strings (with potential passwords) will be unencrypted +*.pubxml +*.publishproj + +# Microsoft Azure Web App publish settings. Comment the next line if you want to +# checkin your Azure Web App publish settings, but sensitive information contained +# in these scripts will be unencrypted +PublishScripts/ + +# NuGet Packages +*.nupkg +# NuGet Symbol Packages +*.snupkg +# The packages folder can be ignored because of Package Restore +**/[Pp]ackages/* +# except build/, which is used as an MSBuild target. +!**/[Pp]ackages/build/ +# Uncomment if necessary however generally it will be regenerated when needed +#!**/[Pp]ackages/repositories.config +# NuGet v3's project.json files produces more ignorable files +*.nuget.props +*.nuget.targets + +# Microsoft Azure Build Output +csx/ +*.build.csdef + +# Microsoft Azure Emulator +ecf/ +rcf/ + +# Windows Store app package directories and files +AppPackages/ +BundleArtifacts/ +Package.StoreAssociation.xml +_pkginfo.txt +*.appx +*.appxbundle +*.appxupload + +# Visual Studio cache files +# files ending in .cache can be ignored +*.[Cc]ache +# but keep track of directories ending in .cache +!?*.[Cc]ache/ + +# Others +ClientBin/ +~$* +*~ +*.dbmdl +*.dbproj.schemaview +*.jfm +*.pfx +*.publishsettings +orleans.codegen.cs + +# Including strong name files can present a security risk +# (https://github.com/github/gitignore/pull/2483#issue-259490424) +#*.snk + +# Since there are multiple workflows, uncomment next line to ignore bower_components +# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) +#bower_components/ + +# RIA/Silverlight projects +Generated_Code/ + +# Backup & report files from converting an old project file +# to a newer Visual Studio version. Backup files are not needed, +# because we have git ;-) +_UpgradeReport_Files/ +Backup*/ +UpgradeLog*.XML +UpgradeLog*.htm +ServiceFabricBackup/ +*.rptproj.bak + +# SQL Server files +*.mdf +*.ldf +*.ndf + +# Business Intelligence projects +*.rdl.data +*.bim.layout +*.bim_*.settings +*.rptproj.rsuser +*- [Bb]ackup.rdl +*- [Bb]ackup ([0-9]).rdl +*- [Bb]ackup ([0-9][0-9]).rdl + +# Microsoft Fakes +FakesAssemblies/ + +# GhostDoc plugin setting file +*.GhostDoc.xml + +# Node.js Tools for Visual Studio +.ntvs_analysis.dat +node_modules/ + +# Visual Studio 6 build log +*.plg + +# Visual Studio 6 workspace options file +*.opt + +# Visual Studio 6 auto-generated workspace file (contains which files were open etc.) +*.vbw + +# Visual Studio LightSwitch build output +**/*.HTMLClient/GeneratedArtifacts +**/*.DesktopClient/GeneratedArtifacts +**/*.DesktopClient/ModelManifest.xml +**/*.Server/GeneratedArtifacts +**/*.Server/ModelManifest.xml +_Pvt_Extensions + +# Paket dependency manager +.paket/paket.exe +paket-files/ + +# FAKE - F# Make +.fake/ + +# CodeRush personal settings +.cr/personal + +# Python Tools for Visual Studio (PTVS) +__pycache__/ +*.pyc + +# Cake - Uncomment if you are using it +# tools/** +# !tools/packages.config + +# Tabs Studio +*.tss + +# Telerik's JustMock configuration file +*.jmconfig + +# BizTalk build output +*.btp.cs +*.btm.cs +*.odx.cs +*.xsd.cs + +# OpenCover UI analysis results +OpenCover/ + +# Azure Stream Analytics local run output +ASALocalRun/ + +# MSBuild Binary and Structured Log +*.binlog + +# NVidia Nsight GPU debugger configuration file +*.nvuser + +# MFractors (Xamarin productivity tool) working folder +.mfractor/ + +# Local History for Visual Studio +.localhistory/ + +# BeatPulse healthcheck temp database +healthchecksdb + +# Backup folder for Package Reference Convert tool in Visual Studio 2017 +MigrationBackup/ + +# Ionide (cross platform F# VS Code tools) working folder +.ionide/ + +# Fody - auto-generated XML schema +FodyWeavers.xsd + +# Subversion +.svn/ + +# Wyniki publikacji ClickOnce +Publikuj/ diff --git a/CDN.my_ImpDM_Src_20210729.sql b/CDN.my_ImpDM_Src_20210729.sql new file mode 100644 index 0000000000000000000000000000000000000000..2abe6abc1faa157918c9f7671f9e7166dbe3125d GIT binary patch literal 18614 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 W0N9zb%OLf8K37i 0 and TrN_RokMiesiac = @RM and + ( case when @WEW > 0 then case TrN_GIDTyp when 1616 then 1 when 1624 then 1 when 1617 then 1 when 1625 then 1 else 0 end else 0 end > 0 or + case when @ZAK > 0 then case TrN_GIDTyp when 1489 then 1 when 1497 then 1 when 1490 then 1 when 1498 then 1 else 0 end else 0 end > 0 or + case when @SP > 0 then case TrN_GIDTyp when 2001 then 1 when 2009 then 1 when 2015 then 1 when 2013 then 1 else 0 end else 0 end > 0)) TTT + insert into @DEB + select DT_GIDNumer, DT_GIDLp, DT_DC, DT_Konto, DT_Kwota, DT_DataCentrali from CDN.Dekrety where DT_DC = 1 and DT_Rok = @Rok and DT_Miesiac = @Miesiac + insert into @CRE + select DT_GIDNumer, DT_GIDLp, DT_DC, DT_Konto, DT_Kwota, DT_DataCentrali from CDN.Dekrety where DT_DC = 2 and DT_Rok = @Rok and DT_Miesiac = @Miesiac + + select Lp = ROW_NUMBER() OVER(ORDER BY Dokument, deb.DT_Konto, cre.DT_Konto), + Dokument, + DEL_Opis, + RokMiesiac, + DataWyst = CDN.TsToDate(CDN.Data(DZK_Rok, DZK_Miesiac, DZK_Dzien), 0), + DataOper = CDN.TsToDate(DataDok, 0), + DokZr = DZK_DokumentZrodlowy, + TrN_GIDNumer, + Dekret = DZK_GIDNumer, + DZK_Dziennik, + Konto_Wn = deb.DT_Konto, + Kwota_Wn = deb.DT_Kwota, + Konto_Ma = cre.DT_Konto, + Kwota_Ma = cre.DT_Kwota, + DataImportu = CDN.TsToDate(deb.DT_DataCentrali, 1), + DZK_SumaCT, + DZK_SumaDT + from @TN inner join CDN.Dziennik on substring(DZK_Opis, 1, len(Dokument)) = Dokument and DZK_Rok = @Rok and DZK_Miesiac = @Miesiac + inner join CDN.DziennikElem on DZK_GIDNumer = DEL_GIDNumer + inner join @DEB deb ON deb.DT_GIDNumer = DEL_GIDNumer and deb.DT_GIDLp = DEL_GIDLp + inner join @CRE cre ON cre.DT_GIDNumer = DEL_GIDNumer and cre.DT_GIDLp = DEL_GIDLp + order by 1 + + + GO + +GRANT execute ON CDN.my_ImpDM_Src TO CDNRaport +GO diff --git a/GenerowanieOpisuNoty.docx b/GenerowanieOpisuNoty.docx new file mode 100644 index 0000000000000000000000000000000000000000..e4644515289d13968aa2a163f287e58736ee8443 GIT binary patch literal 158725 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
    H%7VOzPEZGwA~`G2 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 ssQ|(CuT)DEzI>Tm3cpKS0$*J8TpT5UVIx=&<{9 literal 0 HcmV?d00001 diff --git a/ImportDokMag.code-workspace b/ImportDokMag.code-workspace new file mode 100644 index 0000000..1cbe75c --- /dev/null +++ b/ImportDokMag.code-workspace @@ -0,0 +1,14 @@ +{ + "folders": [ + { + "path": "." + }, + { + "path": "../../../../../cris/Documents/CursorProjects/XLBAZA" + }, + { + "path": "../../../../../cris/Documents/CursorProjects/XLAPI" + } + ], + "settings": {} +} \ No newline at end of file diff --git a/ImportDokMag.sln b/ImportDokMag.sln new file mode 100644 index 0000000..d392e17 --- /dev/null +++ b/ImportDokMag.sln @@ -0,0 +1,32 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 18 +VisualStudioVersion = 18.10.12224.181 stable +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ImportDokMag", "ImportDokMag\ImportDokMag.vbproj", "{ACEDBC4B-04AD-423D-B0D7-B930B9998493}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {ACEDBC4B-04AD-423D-B0D7-B930B9998493}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {ACEDBC4B-04AD-423D-B0D7-B930B9998493}.Debug|Any CPU.Build.0 = Debug|Any CPU + {ACEDBC4B-04AD-423D-B0D7-B930B9998493}.Debug|x86.ActiveCfg = Debug|x86 + {ACEDBC4B-04AD-423D-B0D7-B930B9998493}.Debug|x86.Build.0 = Debug|x86 + {ACEDBC4B-04AD-423D-B0D7-B930B9998493}.Release|Any CPU.ActiveCfg = Release|Any CPU + {ACEDBC4B-04AD-423D-B0D7-B930B9998493}.Release|Any CPU.Build.0 = Release|Any CPU + {ACEDBC4B-04AD-423D-B0D7-B930B9998493}.Release|x86.ActiveCfg = Release|x86 + {ACEDBC4B-04AD-423D-B0D7-B930B9998493}.Release|x86.Build.0 = Release|x86 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + VisualSVNWorkingCopyRoot = . + SolutionGuid = {A76FA861-F012-47CB-BECF-773D69AFCEEF} + EndGlobalSection +EndGlobal diff --git a/ImportDokMag/App.config b/ImportDokMag/App.config new file mode 100644 index 0000000..4ef7012 --- /dev/null +++ b/ImportDokMag/App.config @@ -0,0 +1,46 @@ + + + + +
    + + + + + + + + + + + + c:\temp + + + crispcl\erp + + + MAGJ + + + crispcl\erp + + + + + + + + + ERPXL_Test + + + + + + CDNXL_GOTEC_80_20210809 + + + + diff --git a/ImportDokMag/DsMain.Designer.vb b/ImportDokMag/DsMain.Designer.vb new file mode 100644 index 0000000..8d7c72b --- /dev/null +++ b/ImportDokMag/DsMain.Designer.vb @@ -0,0 +1,3412 @@ +'------------------------------------------------------------------------------ +' +' Ten kod został wygenerowany przez narzędzie. +' Wersja wykonawcza:4.0.30319.42000 +' +' Zmiany w tym pliku mogą spowodować nieprawidłowe zachowanie i zostaną utracone, jeśli +' kod zostanie ponownie wygenerowany. +' +'------------------------------------------------------------------------------ + +Option Strict Off +Option Explicit On + + + +''' +'''Represents a strongly typed in-memory cache of data. +''' + _ +Partial Public Class DsMain + Inherits Global.System.Data.DataSet + + Private tableTbmy_ImpDM_Src As Tbmy_ImpDM_SrcDataTable + + Private tableTbmy_ImpDM_Dekr As Tbmy_ImpDM_DekrDataTable + + Private tableTbmy_ImpDM_Konta As Tbmy_ImpDM_KontaDataTable + + Private _schemaSerializationMode As Global.System.Data.SchemaSerializationMode = Global.System.Data.SchemaSerializationMode.IncludeSchema + + _ + Public Sub New() + MyBase.New + Me.BeginInit + Me.InitClass + Dim schemaChangedHandler As Global.System.ComponentModel.CollectionChangeEventHandler = AddressOf Me.SchemaChanged + AddHandler MyBase.Tables.CollectionChanged, schemaChangedHandler + AddHandler MyBase.Relations.CollectionChanged, schemaChangedHandler + Me.EndInit + End Sub + + _ + Protected Sub New(ByVal info As Global.System.Runtime.Serialization.SerializationInfo, ByVal context As Global.System.Runtime.Serialization.StreamingContext) + MyBase.New(info, context, false) + If (Me.IsBinarySerialized(info, context) = true) Then + Me.InitVars(false) + Dim schemaChangedHandler1 As Global.System.ComponentModel.CollectionChangeEventHandler = AddressOf Me.SchemaChanged + AddHandler Me.Tables.CollectionChanged, schemaChangedHandler1 + AddHandler Me.Relations.CollectionChanged, schemaChangedHandler1 + Return + End If + Dim strSchema As String = CType(info.GetValue("XmlSchema", GetType(String)),String) + If (Me.DetermineSchemaSerializationMode(info, context) = Global.System.Data.SchemaSerializationMode.IncludeSchema) Then + Dim ds As Global.System.Data.DataSet = New Global.System.Data.DataSet() + ds.ReadXmlSchema(New Global.System.Xml.XmlTextReader(New Global.System.IO.StringReader(strSchema))) + If (Not (ds.Tables("Tbmy_ImpDM_Src")) Is Nothing) Then + MyBase.Tables.Add(New Tbmy_ImpDM_SrcDataTable(ds.Tables("Tbmy_ImpDM_Src"))) + End If + If (Not (ds.Tables("Tbmy_ImpDM_Dekr")) Is Nothing) Then + MyBase.Tables.Add(New Tbmy_ImpDM_DekrDataTable(ds.Tables("Tbmy_ImpDM_Dekr"))) + End If + If (Not (ds.Tables("Tbmy_ImpDM_Konta")) Is Nothing) Then + MyBase.Tables.Add(New Tbmy_ImpDM_KontaDataTable(ds.Tables("Tbmy_ImpDM_Konta"))) + End If + Me.DataSetName = ds.DataSetName + Me.Prefix = ds.Prefix + Me.Namespace = ds.Namespace + Me.Locale = ds.Locale + Me.CaseSensitive = ds.CaseSensitive + Me.EnforceConstraints = ds.EnforceConstraints + Me.Merge(ds, false, Global.System.Data.MissingSchemaAction.Add) + Me.InitVars + Else + Me.ReadXmlSchema(New Global.System.Xml.XmlTextReader(New Global.System.IO.StringReader(strSchema))) + End If + Me.GetSerializationData(info, context) + Dim schemaChangedHandler As Global.System.ComponentModel.CollectionChangeEventHandler = AddressOf Me.SchemaChanged + AddHandler MyBase.Tables.CollectionChanged, schemaChangedHandler + AddHandler Me.Relations.CollectionChanged, schemaChangedHandler + End Sub + + _ + Public ReadOnly Property Tbmy_ImpDM_Src() As Tbmy_ImpDM_SrcDataTable + Get + Return Me.tableTbmy_ImpDM_Src + End Get + End Property + + _ + Public ReadOnly Property Tbmy_ImpDM_Dekr() As Tbmy_ImpDM_DekrDataTable + Get + Return Me.tableTbmy_ImpDM_Dekr + End Get + End Property + + _ + Public ReadOnly Property Tbmy_ImpDM_Konta() As Tbmy_ImpDM_KontaDataTable + Get + Return Me.tableTbmy_ImpDM_Konta + End Get + End Property + + _ + Public Overrides Property SchemaSerializationMode() As Global.System.Data.SchemaSerializationMode + Get + Return Me._schemaSerializationMode + End Get + Set + Me._schemaSerializationMode = value + End Set + End Property + + _ + Public Shadows ReadOnly Property Tables() As Global.System.Data.DataTableCollection + Get + Return MyBase.Tables + End Get + End Property + + _ + Public Shadows ReadOnly Property Relations() As Global.System.Data.DataRelationCollection + Get + Return MyBase.Relations + End Get + End Property + + _ + Protected Overrides Sub InitializeDerivedDataSet() + Me.BeginInit + Me.InitClass + Me.EndInit + End Sub + + _ + Public Overrides Function Clone() As Global.System.Data.DataSet + Dim cln As DsMain = CType(MyBase.Clone,DsMain) + cln.InitVars + cln.SchemaSerializationMode = Me.SchemaSerializationMode + Return cln + End Function + + _ + Protected Overrides Function ShouldSerializeTables() As Boolean + Return false + End Function + + _ + Protected Overrides Function ShouldSerializeRelations() As Boolean + Return false + End Function + + _ + Protected Overrides Sub ReadXmlSerializable(ByVal reader As Global.System.Xml.XmlReader) + If (Me.DetermineSchemaSerializationMode(reader) = Global.System.Data.SchemaSerializationMode.IncludeSchema) Then + Me.Reset + Dim ds As Global.System.Data.DataSet = New Global.System.Data.DataSet() + ds.ReadXml(reader) + If (Not (ds.Tables("Tbmy_ImpDM_Src")) Is Nothing) Then + MyBase.Tables.Add(New Tbmy_ImpDM_SrcDataTable(ds.Tables("Tbmy_ImpDM_Src"))) + End If + If (Not (ds.Tables("Tbmy_ImpDM_Dekr")) Is Nothing) Then + MyBase.Tables.Add(New Tbmy_ImpDM_DekrDataTable(ds.Tables("Tbmy_ImpDM_Dekr"))) + End If + If (Not (ds.Tables("Tbmy_ImpDM_Konta")) Is Nothing) Then + MyBase.Tables.Add(New Tbmy_ImpDM_KontaDataTable(ds.Tables("Tbmy_ImpDM_Konta"))) + End If + Me.DataSetName = ds.DataSetName + Me.Prefix = ds.Prefix + Me.Namespace = ds.Namespace + Me.Locale = ds.Locale + Me.CaseSensitive = ds.CaseSensitive + Me.EnforceConstraints = ds.EnforceConstraints + Me.Merge(ds, false, Global.System.Data.MissingSchemaAction.Add) + Me.InitVars + Else + Me.ReadXml(reader) + Me.InitVars + End If + End Sub + + _ + Protected Overrides Function GetSchemaSerializable() As Global.System.Xml.Schema.XmlSchema + Dim stream As Global.System.IO.MemoryStream = New Global.System.IO.MemoryStream() + Me.WriteXmlSchema(New Global.System.Xml.XmlTextWriter(stream, Nothing)) + stream.Position = 0 + Return Global.System.Xml.Schema.XmlSchema.Read(New Global.System.Xml.XmlTextReader(stream), Nothing) + End Function + + _ + Friend Overloads Sub InitVars() + Me.InitVars(true) + End Sub + + _ + Friend Overloads Sub InitVars(ByVal initTable As Boolean) + Me.tableTbmy_ImpDM_Src = CType(MyBase.Tables("Tbmy_ImpDM_Src"),Tbmy_ImpDM_SrcDataTable) + If (initTable = true) Then + If (Not (Me.tableTbmy_ImpDM_Src) Is Nothing) Then + Me.tableTbmy_ImpDM_Src.InitVars + End If + End If + Me.tableTbmy_ImpDM_Dekr = CType(MyBase.Tables("Tbmy_ImpDM_Dekr"),Tbmy_ImpDM_DekrDataTable) + If (initTable = true) Then + If (Not (Me.tableTbmy_ImpDM_Dekr) Is Nothing) Then + Me.tableTbmy_ImpDM_Dekr.InitVars + End If + End If + Me.tableTbmy_ImpDM_Konta = CType(MyBase.Tables("Tbmy_ImpDM_Konta"),Tbmy_ImpDM_KontaDataTable) + If (initTable = true) Then + If (Not (Me.tableTbmy_ImpDM_Konta) Is Nothing) Then + Me.tableTbmy_ImpDM_Konta.InitVars + End If + End If + End Sub + + _ + Private Sub InitClass() + Me.DataSetName = "DsMain" + Me.Prefix = "" + Me.Namespace = "http://tempuri.org/DsMain.xsd" + Me.EnforceConstraints = true + Me.SchemaSerializationMode = Global.System.Data.SchemaSerializationMode.IncludeSchema + Me.tableTbmy_ImpDM_Src = New Tbmy_ImpDM_SrcDataTable() + MyBase.Tables.Add(Me.tableTbmy_ImpDM_Src) + Me.tableTbmy_ImpDM_Dekr = New Tbmy_ImpDM_DekrDataTable() + MyBase.Tables.Add(Me.tableTbmy_ImpDM_Dekr) + Me.tableTbmy_ImpDM_Konta = New Tbmy_ImpDM_KontaDataTable() + MyBase.Tables.Add(Me.tableTbmy_ImpDM_Konta) + End Sub + + _ + Private Function ShouldSerializeTbmy_ImpDM_Src() As Boolean + Return false + End Function + + _ + Private Function ShouldSerializeTbmy_ImpDM_Dekr() As Boolean + Return false + End Function + + _ + Private Function ShouldSerializeTbmy_ImpDM_Konta() As Boolean + Return false + End Function + + _ + Private Sub SchemaChanged(ByVal sender As Object, ByVal e As Global.System.ComponentModel.CollectionChangeEventArgs) + If (e.Action = Global.System.ComponentModel.CollectionChangeAction.Remove) Then + Me.InitVars + End If + End Sub + + _ + Public Shared Function GetTypedDataSetSchema(ByVal xs As Global.System.Xml.Schema.XmlSchemaSet) As Global.System.Xml.Schema.XmlSchemaComplexType + Dim ds As DsMain = New DsMain() + Dim type As Global.System.Xml.Schema.XmlSchemaComplexType = New Global.System.Xml.Schema.XmlSchemaComplexType() + Dim sequence As Global.System.Xml.Schema.XmlSchemaSequence = New Global.System.Xml.Schema.XmlSchemaSequence() + Dim any As Global.System.Xml.Schema.XmlSchemaAny = New Global.System.Xml.Schema.XmlSchemaAny() + any.Namespace = ds.Namespace + sequence.Items.Add(any) + type.Particle = sequence + Dim dsSchema As Global.System.Xml.Schema.XmlSchema = ds.GetSchemaSerializable + If xs.Contains(dsSchema.TargetNamespace) Then + Dim s1 As Global.System.IO.MemoryStream = New Global.System.IO.MemoryStream() + Dim s2 As Global.System.IO.MemoryStream = New Global.System.IO.MemoryStream() + Try + Dim schema As Global.System.Xml.Schema.XmlSchema = Nothing + dsSchema.Write(s1) + Dim schemas As Global.System.Collections.IEnumerator = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator + Do While schemas.MoveNext + schema = CType(schemas.Current,Global.System.Xml.Schema.XmlSchema) + s2.SetLength(0) + schema.Write(s2) + If (s1.Length = s2.Length) Then + s1.Position = 0 + s2.Position = 0 + + Do While ((s1.Position <> s1.Length) _ + AndAlso (s1.ReadByte = s2.ReadByte)) + + + Loop + If (s1.Position = s1.Length) Then + Return type + End If + End If + + Loop + Finally + If (Not (s1) Is Nothing) Then + s1.Close + End If + If (Not (s2) Is Nothing) Then + s2.Close + End If + End Try + End If + xs.Add(dsSchema) + Return type + End Function + + _ + Public Delegate Sub Tbmy_ImpDM_SrcRowChangeEventHandler(ByVal sender As Object, ByVal e As Tbmy_ImpDM_SrcRowChangeEvent) + + _ + Public Delegate Sub Tbmy_ImpDM_DekrRowChangeEventHandler(ByVal sender As Object, ByVal e As Tbmy_ImpDM_DekrRowChangeEvent) + + _ + Public Delegate Sub Tbmy_ImpDM_KontaRowChangeEventHandler(ByVal sender As Object, ByVal e As Tbmy_ImpDM_KontaRowChangeEvent) + + ''' + '''Represents the strongly named DataTable class. + ''' + _ + Partial Public Class Tbmy_ImpDM_SrcDataTable + Inherits Global.System.Data.TypedTableBase(Of Tbmy_ImpDM_SrcRow) + + Private columnLp As Global.System.Data.DataColumn + + Private columnDokument As Global.System.Data.DataColumn + + Private columnRokMiesiac As Global.System.Data.DataColumn + + Private columnDataWyst As Global.System.Data.DataColumn + + Private columnDataOper As Global.System.Data.DataColumn + + Private columnDokZr As Global.System.Data.DataColumn + + Private columnDekret As Global.System.Data.DataColumn + + Private columnDZK_Dziennik As Global.System.Data.DataColumn + + Private columnDataImportu As Global.System.Data.DataColumn + + Private columnDZK_Opis As Global.System.Data.DataColumn + + Private columnSumaCT As Global.System.Data.DataColumn + + Private columnSumaDT As Global.System.Data.DataColumn + + Private columnMagazyn As Global.System.Data.DataColumn + + Private columnKontrahent As Global.System.Data.DataColumn + + Private columnOpis As Global.System.Data.DataColumn + + Private columnDokKoryg As Global.System.Data.DataColumn + + _ + Public Sub New() + MyBase.New + Me.TableName = "Tbmy_ImpDM_Src" + Me.BeginInit + Me.InitClass + Me.EndInit + End Sub + + _ + Friend Sub New(ByVal table As Global.System.Data.DataTable) + MyBase.New + Me.TableName = table.TableName + If (table.CaseSensitive <> table.DataSet.CaseSensitive) Then + Me.CaseSensitive = table.CaseSensitive + End If + If (table.Locale.ToString <> table.DataSet.Locale.ToString) Then + Me.Locale = table.Locale + End If + If (table.Namespace <> table.DataSet.Namespace) Then + Me.Namespace = table.Namespace + End If + Me.Prefix = table.Prefix + Me.MinimumCapacity = table.MinimumCapacity + End Sub + + _ + Protected Sub New(ByVal info As Global.System.Runtime.Serialization.SerializationInfo, ByVal context As Global.System.Runtime.Serialization.StreamingContext) + MyBase.New(info, context) + Me.InitVars + End Sub + + _ + Public ReadOnly Property LpColumn() As Global.System.Data.DataColumn + Get + Return Me.columnLp + End Get + End Property + + _ + Public ReadOnly Property DokumentColumn() As Global.System.Data.DataColumn + Get + Return Me.columnDokument + End Get + End Property + + _ + Public ReadOnly Property RokMiesiacColumn() As Global.System.Data.DataColumn + Get + Return Me.columnRokMiesiac + End Get + End Property + + _ + Public ReadOnly Property DataWystColumn() As Global.System.Data.DataColumn + Get + Return Me.columnDataWyst + End Get + End Property + + _ + Public ReadOnly Property DataOperColumn() As Global.System.Data.DataColumn + Get + Return Me.columnDataOper + End Get + End Property + + _ + Public ReadOnly Property DokZrColumn() As Global.System.Data.DataColumn + Get + Return Me.columnDokZr + End Get + End Property + + _ + Public ReadOnly Property DekretColumn() As Global.System.Data.DataColumn + Get + Return Me.columnDekret + End Get + End Property + + _ + Public ReadOnly Property DZK_DziennikColumn() As Global.System.Data.DataColumn + Get + Return Me.columnDZK_Dziennik + End Get + End Property + + _ + Public ReadOnly Property DataImportuColumn() As Global.System.Data.DataColumn + Get + Return Me.columnDataImportu + End Get + End Property + + _ + Public ReadOnly Property DZK_OpisColumn() As Global.System.Data.DataColumn + Get + Return Me.columnDZK_Opis + End Get + End Property + + _ + Public ReadOnly Property SumaCTColumn() As Global.System.Data.DataColumn + Get + Return Me.columnSumaCT + End Get + End Property + + _ + Public ReadOnly Property SumaDTColumn() As Global.System.Data.DataColumn + Get + Return Me.columnSumaDT + End Get + End Property + + _ + Public ReadOnly Property MagazynColumn() As Global.System.Data.DataColumn + Get + Return Me.columnMagazyn + End Get + End Property + + _ + Public ReadOnly Property KontrahentColumn() As Global.System.Data.DataColumn + Get + Return Me.columnKontrahent + End Get + End Property + + _ + Public ReadOnly Property OpisColumn() As Global.System.Data.DataColumn + Get + Return Me.columnOpis + End Get + End Property + + _ + Public ReadOnly Property DokKorygColumn() As Global.System.Data.DataColumn + Get + Return Me.columnDokKoryg + End Get + End Property + + _ + Public ReadOnly Property Count() As Integer + Get + Return Me.Rows.Count + End Get + End Property + + _ + Public Default ReadOnly Property Item(ByVal index As Integer) As Tbmy_ImpDM_SrcRow + Get + Return CType(Me.Rows(index),Tbmy_ImpDM_SrcRow) + End Get + End Property + + _ + Public Event Tbmy_ImpDM_SrcRowChanging As Tbmy_ImpDM_SrcRowChangeEventHandler + + _ + Public Event Tbmy_ImpDM_SrcRowChanged As Tbmy_ImpDM_SrcRowChangeEventHandler + + _ + Public Event Tbmy_ImpDM_SrcRowDeleting As Tbmy_ImpDM_SrcRowChangeEventHandler + + _ + Public Event Tbmy_ImpDM_SrcRowDeleted As Tbmy_ImpDM_SrcRowChangeEventHandler + + _ + Public Overloads Sub AddTbmy_ImpDM_SrcRow(ByVal row As Tbmy_ImpDM_SrcRow) + Me.Rows.Add(row) + End Sub + + _ + Public Overloads Function AddTbmy_ImpDM_SrcRow( _ + ByVal Lp As Long, _ + ByVal Dokument As String, _ + ByVal RokMiesiac As Integer, _ + ByVal DataWyst As Date, _ + ByVal DataOper As Date, _ + ByVal DokZr As String, _ + ByVal Dekret As Integer, _ + ByVal DZK_Dziennik As String, _ + ByVal DataImportu As Date, _ + ByVal DZK_Opis As String, _ + ByVal SumaCT As Decimal, _ + ByVal SumaDT As Decimal, _ + ByVal Magazyn As String, _ + ByVal Kontrahent As String, _ + ByVal Opis As String, _ + ByVal DokKoryg As String) As Tbmy_ImpDM_SrcRow + Dim rowTbmy_ImpDM_SrcRow As Tbmy_ImpDM_SrcRow = CType(Me.NewRow,Tbmy_ImpDM_SrcRow) + Dim columnValuesArray() As Object = New Object() {Lp, Dokument, RokMiesiac, DataWyst, DataOper, DokZr, Dekret, DZK_Dziennik, DataImportu, DZK_Opis, SumaCT, SumaDT, Magazyn, Kontrahent, Opis, DokKoryg} + rowTbmy_ImpDM_SrcRow.ItemArray = columnValuesArray + Me.Rows.Add(rowTbmy_ImpDM_SrcRow) + Return rowTbmy_ImpDM_SrcRow + End Function + + _ + Public Function FindByLp(ByVal Lp As Long) As Tbmy_ImpDM_SrcRow + Return CType(Me.Rows.Find(New Object() {Lp}),Tbmy_ImpDM_SrcRow) + End Function + + _ + Public Overrides Function Clone() As Global.System.Data.DataTable + Dim cln As Tbmy_ImpDM_SrcDataTable = CType(MyBase.Clone,Tbmy_ImpDM_SrcDataTable) + cln.InitVars + Return cln + End Function + + _ + Protected Overrides Function CreateInstance() As Global.System.Data.DataTable + Return New Tbmy_ImpDM_SrcDataTable() + End Function + + _ + Friend Sub InitVars() + Me.columnLp = MyBase.Columns("Lp") + Me.columnDokument = MyBase.Columns("Dokument") + Me.columnRokMiesiac = MyBase.Columns("RokMiesiac") + Me.columnDataWyst = MyBase.Columns("DataWyst") + Me.columnDataOper = MyBase.Columns("DataOper") + Me.columnDokZr = MyBase.Columns("DokZr") + Me.columnDekret = MyBase.Columns("Dekret") + Me.columnDZK_Dziennik = MyBase.Columns("DZK_Dziennik") + Me.columnDataImportu = MyBase.Columns("DataImportu") + Me.columnDZK_Opis = MyBase.Columns("DZK_Opis") + Me.columnSumaCT = MyBase.Columns("SumaCT") + Me.columnSumaDT = MyBase.Columns("SumaDT") + Me.columnMagazyn = MyBase.Columns("Magazyn") + Me.columnKontrahent = MyBase.Columns("Kontrahent") + Me.columnOpis = MyBase.Columns("Opis") + Me.columnDokKoryg = MyBase.Columns("DokKoryg") + End Sub + + _ + Private Sub InitClass() + Me.columnLp = New Global.System.Data.DataColumn("Lp", GetType(Long), Nothing, Global.System.Data.MappingType.Element) + MyBase.Columns.Add(Me.columnLp) + Me.columnDokument = New Global.System.Data.DataColumn("Dokument", GetType(String), Nothing, Global.System.Data.MappingType.Element) + MyBase.Columns.Add(Me.columnDokument) + Me.columnRokMiesiac = New Global.System.Data.DataColumn("RokMiesiac", GetType(Integer), Nothing, Global.System.Data.MappingType.Element) + MyBase.Columns.Add(Me.columnRokMiesiac) + Me.columnDataWyst = New Global.System.Data.DataColumn("DataWyst", GetType(Date), Nothing, Global.System.Data.MappingType.Element) + MyBase.Columns.Add(Me.columnDataWyst) + Me.columnDataOper = New Global.System.Data.DataColumn("DataOper", GetType(Date), Nothing, Global.System.Data.MappingType.Element) + MyBase.Columns.Add(Me.columnDataOper) + Me.columnDokZr = New Global.System.Data.DataColumn("DokZr", GetType(String), Nothing, Global.System.Data.MappingType.Element) + MyBase.Columns.Add(Me.columnDokZr) + Me.columnDekret = New Global.System.Data.DataColumn("Dekret", GetType(Integer), Nothing, Global.System.Data.MappingType.Element) + MyBase.Columns.Add(Me.columnDekret) + Me.columnDZK_Dziennik = New Global.System.Data.DataColumn("DZK_Dziennik", GetType(String), Nothing, Global.System.Data.MappingType.Element) + MyBase.Columns.Add(Me.columnDZK_Dziennik) + Me.columnDataImportu = New Global.System.Data.DataColumn("DataImportu", GetType(Date), Nothing, Global.System.Data.MappingType.Element) + MyBase.Columns.Add(Me.columnDataImportu) + Me.columnDZK_Opis = New Global.System.Data.DataColumn("DZK_Opis", GetType(String), Nothing, Global.System.Data.MappingType.Element) + MyBase.Columns.Add(Me.columnDZK_Opis) + Me.columnSumaCT = New Global.System.Data.DataColumn("SumaCT", GetType(Decimal), Nothing, Global.System.Data.MappingType.Element) + MyBase.Columns.Add(Me.columnSumaCT) + Me.columnSumaDT = New Global.System.Data.DataColumn("SumaDT", GetType(Decimal), Nothing, Global.System.Data.MappingType.Element) + MyBase.Columns.Add(Me.columnSumaDT) + Me.columnMagazyn = New Global.System.Data.DataColumn("Magazyn", GetType(String), Nothing, Global.System.Data.MappingType.Element) + MyBase.Columns.Add(Me.columnMagazyn) + Me.columnKontrahent = New Global.System.Data.DataColumn("Kontrahent", GetType(String), Nothing, Global.System.Data.MappingType.Element) + MyBase.Columns.Add(Me.columnKontrahent) + Me.columnOpis = New Global.System.Data.DataColumn("Opis", GetType(String), Nothing, Global.System.Data.MappingType.Element) + MyBase.Columns.Add(Me.columnOpis) + Me.columnDokKoryg = New Global.System.Data.DataColumn("DokKoryg", GetType(String), Nothing, Global.System.Data.MappingType.Element) + MyBase.Columns.Add(Me.columnDokKoryg) + Me.Constraints.Add(New Global.System.Data.UniqueConstraint("Constraint1", New Global.System.Data.DataColumn() {Me.columnLp}, true)) + Me.columnLp.AllowDBNull = false + Me.columnLp.ReadOnly = true + Me.columnLp.Unique = true + Me.columnLp.DefaultValue = CType(0,Long) + Me.columnDokument.ReadOnly = true + Me.columnDokument.MaxLength = 255 + Me.columnRokMiesiac.ReadOnly = true + Me.columnRokMiesiac.DefaultValue = CType(200001,Integer) + Me.columnDataWyst.ReadOnly = true + Me.columnDataOper.ReadOnly = true + Me.columnDokZr.ReadOnly = true + Me.columnDokZr.MaxLength = 40 + Me.columnDekret.AutoIncrementSeed = -1 + Me.columnDekret.AutoIncrementStep = -1 + Me.columnDekret.AllowDBNull = false + Me.columnDekret.ReadOnly = true + Me.columnDZK_Dziennik.ReadOnly = true + Me.columnDZK_Dziennik.MaxLength = 5 + Me.columnDataImportu.ReadOnly = true + Me.columnDZK_Opis.ReadOnly = true + Me.columnDZK_Opis.MaxLength = 255 + Me.columnSumaCT.ReadOnly = true + Me.columnSumaDT.ReadOnly = true + Me.columnMagazyn.ReadOnly = true + Me.columnMagazyn.MaxLength = 30 + Me.columnKontrahent.ReadOnly = true + Me.columnKontrahent.MaxLength = 255 + Me.columnOpis.ReadOnly = true + Me.columnOpis.MaxLength = 255 + Me.columnDokKoryg.ReadOnly = true + Me.columnDokKoryg.MaxLength = 40 + End Sub + + _ + Public Function NewTbmy_ImpDM_SrcRow() As Tbmy_ImpDM_SrcRow + Return CType(Me.NewRow,Tbmy_ImpDM_SrcRow) + End Function + + _ + Protected Overrides Function NewRowFromBuilder(ByVal builder As Global.System.Data.DataRowBuilder) As Global.System.Data.DataRow + Return New Tbmy_ImpDM_SrcRow(builder) + End Function + + _ + Protected Overrides Function GetRowType() As Global.System.Type + Return GetType(Tbmy_ImpDM_SrcRow) + End Function + + _ + Protected Overrides Sub OnRowChanged(ByVal e As Global.System.Data.DataRowChangeEventArgs) + MyBase.OnRowChanged(e) + If (Not (Me.Tbmy_ImpDM_SrcRowChangedEvent) Is Nothing) Then + RaiseEvent Tbmy_ImpDM_SrcRowChanged(Me, New Tbmy_ImpDM_SrcRowChangeEvent(CType(e.Row,Tbmy_ImpDM_SrcRow), e.Action)) + End If + End Sub + + _ + Protected Overrides Sub OnRowChanging(ByVal e As Global.System.Data.DataRowChangeEventArgs) + MyBase.OnRowChanging(e) + If (Not (Me.Tbmy_ImpDM_SrcRowChangingEvent) Is Nothing) Then + RaiseEvent Tbmy_ImpDM_SrcRowChanging(Me, New Tbmy_ImpDM_SrcRowChangeEvent(CType(e.Row,Tbmy_ImpDM_SrcRow), e.Action)) + End If + End Sub + + _ + Protected Overrides Sub OnRowDeleted(ByVal e As Global.System.Data.DataRowChangeEventArgs) + MyBase.OnRowDeleted(e) + If (Not (Me.Tbmy_ImpDM_SrcRowDeletedEvent) Is Nothing) Then + RaiseEvent Tbmy_ImpDM_SrcRowDeleted(Me, New Tbmy_ImpDM_SrcRowChangeEvent(CType(e.Row,Tbmy_ImpDM_SrcRow), e.Action)) + End If + End Sub + + _ + Protected Overrides Sub OnRowDeleting(ByVal e As Global.System.Data.DataRowChangeEventArgs) + MyBase.OnRowDeleting(e) + If (Not (Me.Tbmy_ImpDM_SrcRowDeletingEvent) Is Nothing) Then + RaiseEvent Tbmy_ImpDM_SrcRowDeleting(Me, New Tbmy_ImpDM_SrcRowChangeEvent(CType(e.Row,Tbmy_ImpDM_SrcRow), e.Action)) + End If + End Sub + + _ + Public Sub RemoveTbmy_ImpDM_SrcRow(ByVal row As Tbmy_ImpDM_SrcRow) + Me.Rows.Remove(row) + End Sub + + _ + Public Shared Function GetTypedTableSchema(ByVal xs As Global.System.Xml.Schema.XmlSchemaSet) As Global.System.Xml.Schema.XmlSchemaComplexType + Dim type As Global.System.Xml.Schema.XmlSchemaComplexType = New Global.System.Xml.Schema.XmlSchemaComplexType() + Dim sequence As Global.System.Xml.Schema.XmlSchemaSequence = New Global.System.Xml.Schema.XmlSchemaSequence() + Dim ds As DsMain = New DsMain() + Dim any1 As Global.System.Xml.Schema.XmlSchemaAny = New Global.System.Xml.Schema.XmlSchemaAny() + any1.Namespace = "http://www.w3.org/2001/XMLSchema" + any1.MinOccurs = New Decimal(0) + any1.MaxOccurs = Decimal.MaxValue + any1.ProcessContents = Global.System.Xml.Schema.XmlSchemaContentProcessing.Lax + sequence.Items.Add(any1) + Dim any2 As Global.System.Xml.Schema.XmlSchemaAny = New Global.System.Xml.Schema.XmlSchemaAny() + any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1" + any2.MinOccurs = New Decimal(1) + any2.ProcessContents = Global.System.Xml.Schema.XmlSchemaContentProcessing.Lax + sequence.Items.Add(any2) + Dim attribute1 As Global.System.Xml.Schema.XmlSchemaAttribute = New Global.System.Xml.Schema.XmlSchemaAttribute() + attribute1.Name = "namespace" + attribute1.FixedValue = ds.Namespace + type.Attributes.Add(attribute1) + Dim attribute2 As Global.System.Xml.Schema.XmlSchemaAttribute = New Global.System.Xml.Schema.XmlSchemaAttribute() + attribute2.Name = "tableTypeName" + attribute2.FixedValue = "Tbmy_ImpDM_SrcDataTable" + type.Attributes.Add(attribute2) + type.Particle = sequence + Dim dsSchema As Global.System.Xml.Schema.XmlSchema = ds.GetSchemaSerializable + If xs.Contains(dsSchema.TargetNamespace) Then + Dim s1 As Global.System.IO.MemoryStream = New Global.System.IO.MemoryStream() + Dim s2 As Global.System.IO.MemoryStream = New Global.System.IO.MemoryStream() + Try + Dim schema As Global.System.Xml.Schema.XmlSchema = Nothing + dsSchema.Write(s1) + Dim schemas As Global.System.Collections.IEnumerator = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator + Do While schemas.MoveNext + schema = CType(schemas.Current,Global.System.Xml.Schema.XmlSchema) + s2.SetLength(0) + schema.Write(s2) + If (s1.Length = s2.Length) Then + s1.Position = 0 + s2.Position = 0 + + Do While ((s1.Position <> s1.Length) _ + AndAlso (s1.ReadByte = s2.ReadByte)) + + + Loop + If (s1.Position = s1.Length) Then + Return type + End If + End If + + Loop + Finally + If (Not (s1) Is Nothing) Then + s1.Close + End If + If (Not (s2) Is Nothing) Then + s2.Close + End If + End Try + End If + xs.Add(dsSchema) + Return type + End Function + End Class + + ''' + '''Represents the strongly named DataTable class. + ''' + _ + Partial Public Class Tbmy_ImpDM_DekrDataTable + Inherits Global.System.Data.TypedTableBase(Of Tbmy_ImpDM_DekrRow) + + Private columnLp As Global.System.Data.DataColumn + + Private columnDZK_Opis As Global.System.Data.DataColumn + + Private columnData As Global.System.Data.DataColumn + + Private columnDataDokumentu As Global.System.Data.DataColumn + + Private columnKwota As Global.System.Data.DataColumn + + Private columnDokZr As Global.System.Data.DataColumn + + Private columnKontoDebet As Global.System.Data.DataColumn + + Private columnKontoCredit As Global.System.Data.DataColumn + + Private columnIdentyfikator As Global.System.Data.DataColumn + + Private columnOpis As Global.System.Data.DataColumn + + Private columnDataImportu As Global.System.Data.DataColumn + + _ + Public Sub New() + MyBase.New + Me.TableName = "Tbmy_ImpDM_Dekr" + Me.BeginInit + Me.InitClass + Me.EndInit + End Sub + + _ + Friend Sub New(ByVal table As Global.System.Data.DataTable) + MyBase.New + Me.TableName = table.TableName + If (table.CaseSensitive <> table.DataSet.CaseSensitive) Then + Me.CaseSensitive = table.CaseSensitive + End If + If (table.Locale.ToString <> table.DataSet.Locale.ToString) Then + Me.Locale = table.Locale + End If + If (table.Namespace <> table.DataSet.Namespace) Then + Me.Namespace = table.Namespace + End If + Me.Prefix = table.Prefix + Me.MinimumCapacity = table.MinimumCapacity + End Sub + + _ + Protected Sub New(ByVal info As Global.System.Runtime.Serialization.SerializationInfo, ByVal context As Global.System.Runtime.Serialization.StreamingContext) + MyBase.New(info, context) + Me.InitVars + End Sub + + _ + Public ReadOnly Property LpColumn() As Global.System.Data.DataColumn + Get + Return Me.columnLp + End Get + End Property + + _ + Public ReadOnly Property DZK_OpisColumn() As Global.System.Data.DataColumn + Get + Return Me.columnDZK_Opis + End Get + End Property + + _ + Public ReadOnly Property DataColumn() As Global.System.Data.DataColumn + Get + Return Me.columnData + End Get + End Property + + _ + Public ReadOnly Property DataDokumentuColumn() As Global.System.Data.DataColumn + Get + Return Me.columnDataDokumentu + End Get + End Property + + _ + Public ReadOnly Property KwotaColumn() As Global.System.Data.DataColumn + Get + Return Me.columnKwota + End Get + End Property + + _ + Public ReadOnly Property DokZrColumn() As Global.System.Data.DataColumn + Get + Return Me.columnDokZr + End Get + End Property + + _ + Public ReadOnly Property KontoDebetColumn() As Global.System.Data.DataColumn + Get + Return Me.columnKontoDebet + End Get + End Property + + _ + Public ReadOnly Property KontoCreditColumn() As Global.System.Data.DataColumn + Get + Return Me.columnKontoCredit + End Get + End Property + + _ + Public ReadOnly Property IdentyfikatorColumn() As Global.System.Data.DataColumn + Get + Return Me.columnIdentyfikator + End Get + End Property + + _ + Public ReadOnly Property OpisColumn() As Global.System.Data.DataColumn + Get + Return Me.columnOpis + End Get + End Property + + _ + Public ReadOnly Property DataImportuColumn() As Global.System.Data.DataColumn + Get + Return Me.columnDataImportu + End Get + End Property + + _ + Public ReadOnly Property Count() As Integer + Get + Return Me.Rows.Count + End Get + End Property + + _ + Public Default ReadOnly Property Item(ByVal index As Integer) As Tbmy_ImpDM_DekrRow + Get + Return CType(Me.Rows(index),Tbmy_ImpDM_DekrRow) + End Get + End Property + + _ + Public Event Tbmy_ImpDM_DekrRowChanging As Tbmy_ImpDM_DekrRowChangeEventHandler + + _ + Public Event Tbmy_ImpDM_DekrRowChanged As Tbmy_ImpDM_DekrRowChangeEventHandler + + _ + Public Event Tbmy_ImpDM_DekrRowDeleting As Tbmy_ImpDM_DekrRowChangeEventHandler + + _ + Public Event Tbmy_ImpDM_DekrRowDeleted As Tbmy_ImpDM_DekrRowChangeEventHandler + + _ + Public Overloads Sub AddTbmy_ImpDM_DekrRow(ByVal row As Tbmy_ImpDM_DekrRow) + Me.Rows.Add(row) + End Sub + + _ + Public Overloads Function AddTbmy_ImpDM_DekrRow(ByVal Lp As Long, ByVal DZK_Opis As String, ByVal Data As Integer, ByVal DataDokumentu As Integer, ByVal Kwota As Decimal, ByVal DokZr As String, ByVal KontoDebet As String, ByVal KontoCredit As String, ByVal Identyfikator As String, ByVal Opis As String, ByVal DataImportu As Date) As Tbmy_ImpDM_DekrRow + Dim rowTbmy_ImpDM_DekrRow As Tbmy_ImpDM_DekrRow = CType(Me.NewRow,Tbmy_ImpDM_DekrRow) + Dim columnValuesArray() As Object = New Object() {Lp, DZK_Opis, Data, DataDokumentu, Kwota, DokZr, KontoDebet, KontoCredit, Identyfikator, Opis, DataImportu} + rowTbmy_ImpDM_DekrRow.ItemArray = columnValuesArray + Me.Rows.Add(rowTbmy_ImpDM_DekrRow) + Return rowTbmy_ImpDM_DekrRow + End Function + + _ + Public Overrides Function Clone() As Global.System.Data.DataTable + Dim cln As Tbmy_ImpDM_DekrDataTable = CType(MyBase.Clone,Tbmy_ImpDM_DekrDataTable) + cln.InitVars + Return cln + End Function + + _ + Protected Overrides Function CreateInstance() As Global.System.Data.DataTable + Return New Tbmy_ImpDM_DekrDataTable() + End Function + + _ + Friend Sub InitVars() + Me.columnLp = MyBase.Columns("Lp") + Me.columnDZK_Opis = MyBase.Columns("DZK_Opis") + Me.columnData = MyBase.Columns("Data") + Me.columnDataDokumentu = MyBase.Columns("DataDokumentu") + Me.columnKwota = MyBase.Columns("Kwota") + Me.columnDokZr = MyBase.Columns("DokZr") + Me.columnKontoDebet = MyBase.Columns("KontoDebet") + Me.columnKontoCredit = MyBase.Columns("KontoCredit") + Me.columnIdentyfikator = MyBase.Columns("Identyfikator") + Me.columnOpis = MyBase.Columns("Opis") + Me.columnDataImportu = MyBase.Columns("DataImportu") + End Sub + + _ + Private Sub InitClass() + Me.columnLp = New Global.System.Data.DataColumn("Lp", GetType(Long), Nothing, Global.System.Data.MappingType.Element) + MyBase.Columns.Add(Me.columnLp) + Me.columnDZK_Opis = New Global.System.Data.DataColumn("DZK_Opis", GetType(String), Nothing, Global.System.Data.MappingType.Element) + MyBase.Columns.Add(Me.columnDZK_Opis) + Me.columnData = New Global.System.Data.DataColumn("Data", GetType(Integer), Nothing, Global.System.Data.MappingType.Element) + MyBase.Columns.Add(Me.columnData) + Me.columnDataDokumentu = New Global.System.Data.DataColumn("DataDokumentu", GetType(Integer), Nothing, Global.System.Data.MappingType.Element) + MyBase.Columns.Add(Me.columnDataDokumentu) + Me.columnKwota = New Global.System.Data.DataColumn("Kwota", GetType(Decimal), Nothing, Global.System.Data.MappingType.Element) + MyBase.Columns.Add(Me.columnKwota) + Me.columnDokZr = New Global.System.Data.DataColumn("DokZr", GetType(String), Nothing, Global.System.Data.MappingType.Element) + MyBase.Columns.Add(Me.columnDokZr) + Me.columnKontoDebet = New Global.System.Data.DataColumn("KontoDebet", GetType(String), Nothing, Global.System.Data.MappingType.Element) + MyBase.Columns.Add(Me.columnKontoDebet) + Me.columnKontoCredit = New Global.System.Data.DataColumn("KontoCredit", GetType(String), Nothing, Global.System.Data.MappingType.Element) + MyBase.Columns.Add(Me.columnKontoCredit) + Me.columnIdentyfikator = New Global.System.Data.DataColumn("Identyfikator", GetType(String), Nothing, Global.System.Data.MappingType.Element) + MyBase.Columns.Add(Me.columnIdentyfikator) + Me.columnOpis = New Global.System.Data.DataColumn("Opis", GetType(String), Nothing, Global.System.Data.MappingType.Element) + MyBase.Columns.Add(Me.columnOpis) + Me.columnDataImportu = New Global.System.Data.DataColumn("DataImportu", GetType(Date), Nothing, Global.System.Data.MappingType.Element) + MyBase.Columns.Add(Me.columnDataImportu) + Me.columnLp.ReadOnly = true + Me.columnDZK_Opis.MaxLength = 80 + Me.columnKwota.ReadOnly = true + Me.columnDokZr.MaxLength = 40 + Me.columnKontoDebet.MaxLength = 50 + Me.columnKontoCredit.MaxLength = 50 + Me.columnIdentyfikator.MaxLength = 80 + Me.columnOpis.MaxLength = 80 + Me.columnDataImportu.ReadOnly = true + End Sub + + _ + Public Function NewTbmy_ImpDM_DekrRow() As Tbmy_ImpDM_DekrRow + Return CType(Me.NewRow,Tbmy_ImpDM_DekrRow) + End Function + + _ + Protected Overrides Function NewRowFromBuilder(ByVal builder As Global.System.Data.DataRowBuilder) As Global.System.Data.DataRow + Return New Tbmy_ImpDM_DekrRow(builder) + End Function + + _ + Protected Overrides Function GetRowType() As Global.System.Type + Return GetType(Tbmy_ImpDM_DekrRow) + End Function + + _ + Protected Overrides Sub OnRowChanged(ByVal e As Global.System.Data.DataRowChangeEventArgs) + MyBase.OnRowChanged(e) + If (Not (Me.Tbmy_ImpDM_DekrRowChangedEvent) Is Nothing) Then + RaiseEvent Tbmy_ImpDM_DekrRowChanged(Me, New Tbmy_ImpDM_DekrRowChangeEvent(CType(e.Row,Tbmy_ImpDM_DekrRow), e.Action)) + End If + End Sub + + _ + Protected Overrides Sub OnRowChanging(ByVal e As Global.System.Data.DataRowChangeEventArgs) + MyBase.OnRowChanging(e) + If (Not (Me.Tbmy_ImpDM_DekrRowChangingEvent) Is Nothing) Then + RaiseEvent Tbmy_ImpDM_DekrRowChanging(Me, New Tbmy_ImpDM_DekrRowChangeEvent(CType(e.Row,Tbmy_ImpDM_DekrRow), e.Action)) + End If + End Sub + + _ + Protected Overrides Sub OnRowDeleted(ByVal e As Global.System.Data.DataRowChangeEventArgs) + MyBase.OnRowDeleted(e) + If (Not (Me.Tbmy_ImpDM_DekrRowDeletedEvent) Is Nothing) Then + RaiseEvent Tbmy_ImpDM_DekrRowDeleted(Me, New Tbmy_ImpDM_DekrRowChangeEvent(CType(e.Row,Tbmy_ImpDM_DekrRow), e.Action)) + End If + End Sub + + _ + Protected Overrides Sub OnRowDeleting(ByVal e As Global.System.Data.DataRowChangeEventArgs) + MyBase.OnRowDeleting(e) + If (Not (Me.Tbmy_ImpDM_DekrRowDeletingEvent) Is Nothing) Then + RaiseEvent Tbmy_ImpDM_DekrRowDeleting(Me, New Tbmy_ImpDM_DekrRowChangeEvent(CType(e.Row,Tbmy_ImpDM_DekrRow), e.Action)) + End If + End Sub + + _ + Public Sub RemoveTbmy_ImpDM_DekrRow(ByVal row As Tbmy_ImpDM_DekrRow) + Me.Rows.Remove(row) + End Sub + + _ + Public Shared Function GetTypedTableSchema(ByVal xs As Global.System.Xml.Schema.XmlSchemaSet) As Global.System.Xml.Schema.XmlSchemaComplexType + Dim type As Global.System.Xml.Schema.XmlSchemaComplexType = New Global.System.Xml.Schema.XmlSchemaComplexType() + Dim sequence As Global.System.Xml.Schema.XmlSchemaSequence = New Global.System.Xml.Schema.XmlSchemaSequence() + Dim ds As DsMain = New DsMain() + Dim any1 As Global.System.Xml.Schema.XmlSchemaAny = New Global.System.Xml.Schema.XmlSchemaAny() + any1.Namespace = "http://www.w3.org/2001/XMLSchema" + any1.MinOccurs = New Decimal(0) + any1.MaxOccurs = Decimal.MaxValue + any1.ProcessContents = Global.System.Xml.Schema.XmlSchemaContentProcessing.Lax + sequence.Items.Add(any1) + Dim any2 As Global.System.Xml.Schema.XmlSchemaAny = New Global.System.Xml.Schema.XmlSchemaAny() + any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1" + any2.MinOccurs = New Decimal(1) + any2.ProcessContents = Global.System.Xml.Schema.XmlSchemaContentProcessing.Lax + sequence.Items.Add(any2) + Dim attribute1 As Global.System.Xml.Schema.XmlSchemaAttribute = New Global.System.Xml.Schema.XmlSchemaAttribute() + attribute1.Name = "namespace" + attribute1.FixedValue = ds.Namespace + type.Attributes.Add(attribute1) + Dim attribute2 As Global.System.Xml.Schema.XmlSchemaAttribute = New Global.System.Xml.Schema.XmlSchemaAttribute() + attribute2.Name = "tableTypeName" + attribute2.FixedValue = "Tbmy_ImpDM_DekrDataTable" + type.Attributes.Add(attribute2) + type.Particle = sequence + Dim dsSchema As Global.System.Xml.Schema.XmlSchema = ds.GetSchemaSerializable + If xs.Contains(dsSchema.TargetNamespace) Then + Dim s1 As Global.System.IO.MemoryStream = New Global.System.IO.MemoryStream() + Dim s2 As Global.System.IO.MemoryStream = New Global.System.IO.MemoryStream() + Try + Dim schema As Global.System.Xml.Schema.XmlSchema = Nothing + dsSchema.Write(s1) + Dim schemas As Global.System.Collections.IEnumerator = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator + Do While schemas.MoveNext + schema = CType(schemas.Current,Global.System.Xml.Schema.XmlSchema) + s2.SetLength(0) + schema.Write(s2) + If (s1.Length = s2.Length) Then + s1.Position = 0 + s2.Position = 0 + + Do While ((s1.Position <> s1.Length) _ + AndAlso (s1.ReadByte = s2.ReadByte)) + + + Loop + If (s1.Position = s1.Length) Then + Return type + End If + End If + + Loop + Finally + If (Not (s1) Is Nothing) Then + s1.Close + End If + If (Not (s2) Is Nothing) Then + s2.Close + End If + End Try + End If + xs.Add(dsSchema) + Return type + End Function + End Class + + ''' + '''Represents the strongly named DataTable class. + ''' + _ + Partial Public Class Tbmy_ImpDM_KontaDataTable + Inherits Global.System.Data.TypedTableBase(Of Tbmy_ImpDM_KontaRow) + + Private columnKonto As Global.System.Data.DataColumn + + _ + Public Sub New() + MyBase.New + Me.TableName = "Tbmy_ImpDM_Konta" + Me.BeginInit + Me.InitClass + Me.EndInit + End Sub + + _ + Friend Sub New(ByVal table As Global.System.Data.DataTable) + MyBase.New + Me.TableName = table.TableName + If (table.CaseSensitive <> table.DataSet.CaseSensitive) Then + Me.CaseSensitive = table.CaseSensitive + End If + If (table.Locale.ToString <> table.DataSet.Locale.ToString) Then + Me.Locale = table.Locale + End If + If (table.Namespace <> table.DataSet.Namespace) Then + Me.Namespace = table.Namespace + End If + Me.Prefix = table.Prefix + Me.MinimumCapacity = table.MinimumCapacity + End Sub + + _ + Protected Sub New(ByVal info As Global.System.Runtime.Serialization.SerializationInfo, ByVal context As Global.System.Runtime.Serialization.StreamingContext) + MyBase.New(info, context) + Me.InitVars + End Sub + + _ + Public ReadOnly Property KontoColumn() As Global.System.Data.DataColumn + Get + Return Me.columnKonto + End Get + End Property + + _ + Public ReadOnly Property Count() As Integer + Get + Return Me.Rows.Count + End Get + End Property + + _ + Public Default ReadOnly Property Item(ByVal index As Integer) As Tbmy_ImpDM_KontaRow + Get + Return CType(Me.Rows(index),Tbmy_ImpDM_KontaRow) + End Get + End Property + + _ + Public Event Tbmy_ImpDM_KontaRowChanging As Tbmy_ImpDM_KontaRowChangeEventHandler + + _ + Public Event Tbmy_ImpDM_KontaRowChanged As Tbmy_ImpDM_KontaRowChangeEventHandler + + _ + Public Event Tbmy_ImpDM_KontaRowDeleting As Tbmy_ImpDM_KontaRowChangeEventHandler + + _ + Public Event Tbmy_ImpDM_KontaRowDeleted As Tbmy_ImpDM_KontaRowChangeEventHandler + + _ + Public Overloads Sub AddTbmy_ImpDM_KontaRow(ByVal row As Tbmy_ImpDM_KontaRow) + Me.Rows.Add(row) + End Sub + + _ + Public Overloads Function AddTbmy_ImpDM_KontaRow(ByVal Konto As String) As Tbmy_ImpDM_KontaRow + Dim rowTbmy_ImpDM_KontaRow As Tbmy_ImpDM_KontaRow = CType(Me.NewRow,Tbmy_ImpDM_KontaRow) + Dim columnValuesArray() As Object = New Object() {Konto} + rowTbmy_ImpDM_KontaRow.ItemArray = columnValuesArray + Me.Rows.Add(rowTbmy_ImpDM_KontaRow) + Return rowTbmy_ImpDM_KontaRow + End Function + + _ + Public Overrides Function Clone() As Global.System.Data.DataTable + Dim cln As Tbmy_ImpDM_KontaDataTable = CType(MyBase.Clone,Tbmy_ImpDM_KontaDataTable) + cln.InitVars + Return cln + End Function + + _ + Protected Overrides Function CreateInstance() As Global.System.Data.DataTable + Return New Tbmy_ImpDM_KontaDataTable() + End Function + + _ + Friend Sub InitVars() + Me.columnKonto = MyBase.Columns("Konto") + End Sub + + _ + Private Sub InitClass() + Me.columnKonto = New Global.System.Data.DataColumn("Konto", GetType(String), Nothing, Global.System.Data.MappingType.Element) + MyBase.Columns.Add(Me.columnKonto) + Me.columnKonto.MaxLength = 30 + End Sub + + _ + Public Function NewTbmy_ImpDM_KontaRow() As Tbmy_ImpDM_KontaRow + Return CType(Me.NewRow,Tbmy_ImpDM_KontaRow) + End Function + + _ + Protected Overrides Function NewRowFromBuilder(ByVal builder As Global.System.Data.DataRowBuilder) As Global.System.Data.DataRow + Return New Tbmy_ImpDM_KontaRow(builder) + End Function + + _ + Protected Overrides Function GetRowType() As Global.System.Type + Return GetType(Tbmy_ImpDM_KontaRow) + End Function + + _ + Protected Overrides Sub OnRowChanged(ByVal e As Global.System.Data.DataRowChangeEventArgs) + MyBase.OnRowChanged(e) + If (Not (Me.Tbmy_ImpDM_KontaRowChangedEvent) Is Nothing) Then + RaiseEvent Tbmy_ImpDM_KontaRowChanged(Me, New Tbmy_ImpDM_KontaRowChangeEvent(CType(e.Row,Tbmy_ImpDM_KontaRow), e.Action)) + End If + End Sub + + _ + Protected Overrides Sub OnRowChanging(ByVal e As Global.System.Data.DataRowChangeEventArgs) + MyBase.OnRowChanging(e) + If (Not (Me.Tbmy_ImpDM_KontaRowChangingEvent) Is Nothing) Then + RaiseEvent Tbmy_ImpDM_KontaRowChanging(Me, New Tbmy_ImpDM_KontaRowChangeEvent(CType(e.Row,Tbmy_ImpDM_KontaRow), e.Action)) + End If + End Sub + + _ + Protected Overrides Sub OnRowDeleted(ByVal e As Global.System.Data.DataRowChangeEventArgs) + MyBase.OnRowDeleted(e) + If (Not (Me.Tbmy_ImpDM_KontaRowDeletedEvent) Is Nothing) Then + RaiseEvent Tbmy_ImpDM_KontaRowDeleted(Me, New Tbmy_ImpDM_KontaRowChangeEvent(CType(e.Row,Tbmy_ImpDM_KontaRow), e.Action)) + End If + End Sub + + _ + Protected Overrides Sub OnRowDeleting(ByVal e As Global.System.Data.DataRowChangeEventArgs) + MyBase.OnRowDeleting(e) + If (Not (Me.Tbmy_ImpDM_KontaRowDeletingEvent) Is Nothing) Then + RaiseEvent Tbmy_ImpDM_KontaRowDeleting(Me, New Tbmy_ImpDM_KontaRowChangeEvent(CType(e.Row,Tbmy_ImpDM_KontaRow), e.Action)) + End If + End Sub + + _ + Public Sub RemoveTbmy_ImpDM_KontaRow(ByVal row As Tbmy_ImpDM_KontaRow) + Me.Rows.Remove(row) + End Sub + + _ + Public Shared Function GetTypedTableSchema(ByVal xs As Global.System.Xml.Schema.XmlSchemaSet) As Global.System.Xml.Schema.XmlSchemaComplexType + Dim type As Global.System.Xml.Schema.XmlSchemaComplexType = New Global.System.Xml.Schema.XmlSchemaComplexType() + Dim sequence As Global.System.Xml.Schema.XmlSchemaSequence = New Global.System.Xml.Schema.XmlSchemaSequence() + Dim ds As DsMain = New DsMain() + Dim any1 As Global.System.Xml.Schema.XmlSchemaAny = New Global.System.Xml.Schema.XmlSchemaAny() + any1.Namespace = "http://www.w3.org/2001/XMLSchema" + any1.MinOccurs = New Decimal(0) + any1.MaxOccurs = Decimal.MaxValue + any1.ProcessContents = Global.System.Xml.Schema.XmlSchemaContentProcessing.Lax + sequence.Items.Add(any1) + Dim any2 As Global.System.Xml.Schema.XmlSchemaAny = New Global.System.Xml.Schema.XmlSchemaAny() + any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1" + any2.MinOccurs = New Decimal(1) + any2.ProcessContents = Global.System.Xml.Schema.XmlSchemaContentProcessing.Lax + sequence.Items.Add(any2) + Dim attribute1 As Global.System.Xml.Schema.XmlSchemaAttribute = New Global.System.Xml.Schema.XmlSchemaAttribute() + attribute1.Name = "namespace" + attribute1.FixedValue = ds.Namespace + type.Attributes.Add(attribute1) + Dim attribute2 As Global.System.Xml.Schema.XmlSchemaAttribute = New Global.System.Xml.Schema.XmlSchemaAttribute() + attribute2.Name = "tableTypeName" + attribute2.FixedValue = "Tbmy_ImpDM_KontaDataTable" + type.Attributes.Add(attribute2) + type.Particle = sequence + Dim dsSchema As Global.System.Xml.Schema.XmlSchema = ds.GetSchemaSerializable + If xs.Contains(dsSchema.TargetNamespace) Then + Dim s1 As Global.System.IO.MemoryStream = New Global.System.IO.MemoryStream() + Dim s2 As Global.System.IO.MemoryStream = New Global.System.IO.MemoryStream() + Try + Dim schema As Global.System.Xml.Schema.XmlSchema = Nothing + dsSchema.Write(s1) + Dim schemas As Global.System.Collections.IEnumerator = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator + Do While schemas.MoveNext + schema = CType(schemas.Current,Global.System.Xml.Schema.XmlSchema) + s2.SetLength(0) + schema.Write(s2) + If (s1.Length = s2.Length) Then + s1.Position = 0 + s2.Position = 0 + + Do While ((s1.Position <> s1.Length) _ + AndAlso (s1.ReadByte = s2.ReadByte)) + + + Loop + If (s1.Position = s1.Length) Then + Return type + End If + End If + + Loop + Finally + If (Not (s1) Is Nothing) Then + s1.Close + End If + If (Not (s2) Is Nothing) Then + s2.Close + End If + End Try + End If + xs.Add(dsSchema) + Return type + End Function + End Class + + ''' + '''Represents strongly named DataRow class. + ''' + Partial Public Class Tbmy_ImpDM_SrcRow + Inherits Global.System.Data.DataRow + + Private tableTbmy_ImpDM_Src As Tbmy_ImpDM_SrcDataTable + + _ + Friend Sub New(ByVal rb As Global.System.Data.DataRowBuilder) + MyBase.New(rb) + Me.tableTbmy_ImpDM_Src = CType(Me.Table,Tbmy_ImpDM_SrcDataTable) + End Sub + + _ + Public Property Lp() As Long + Get + Return CType(Me(Me.tableTbmy_ImpDM_Src.LpColumn),Long) + End Get + Set + Me(Me.tableTbmy_ImpDM_Src.LpColumn) = value + End Set + End Property + + _ + Public Property Dokument() As String + Get + If Me.IsDokumentNull Then + Return Nothing + Else + Return CType(Me(Me.tableTbmy_ImpDM_Src.DokumentColumn),String) + End If + End Get + Set + Me(Me.tableTbmy_ImpDM_Src.DokumentColumn) = value + End Set + End Property + + _ + Public Property RokMiesiac() As Integer + Get + Try + Return CType(Me(Me.tableTbmy_ImpDM_Src.RokMiesiacColumn),Integer) + Catch e As Global.System.InvalidCastException + Throw New Global.System.Data.StrongTypingException("Wartość z kolumny 'RokMiesiac' w tabeli 'Tbmy_ImpDM_Src' to DBNull.", e) + End Try + End Get + Set + Me(Me.tableTbmy_ImpDM_Src.RokMiesiacColumn) = value + End Set + End Property + + _ + Public Property DataWyst() As Date + Get + Try + Return CType(Me(Me.tableTbmy_ImpDM_Src.DataWystColumn),Date) + Catch e As Global.System.InvalidCastException + Throw New Global.System.Data.StrongTypingException("Wartość z kolumny 'DataWyst' w tabeli 'Tbmy_ImpDM_Src' to DBNull.", e) + End Try + End Get + Set + Me(Me.tableTbmy_ImpDM_Src.DataWystColumn) = value + End Set + End Property + + _ + Public Property DataOper() As Date + Get + Try + Return CType(Me(Me.tableTbmy_ImpDM_Src.DataOperColumn),Date) + Catch e As Global.System.InvalidCastException + Throw New Global.System.Data.StrongTypingException("Wartość z kolumny 'DataOper' w tabeli 'Tbmy_ImpDM_Src' to DBNull.", e) + End Try + End Get + Set + Me(Me.tableTbmy_ImpDM_Src.DataOperColumn) = value + End Set + End Property + + _ + Public Property DokZr() As String + Get + If Me.IsDokZrNull Then + Return Nothing + Else + Return CType(Me(Me.tableTbmy_ImpDM_Src.DokZrColumn),String) + End If + End Get + Set + Me(Me.tableTbmy_ImpDM_Src.DokZrColumn) = value + End Set + End Property + + _ + Public Property Dekret() As Integer + Get + Return CType(Me(Me.tableTbmy_ImpDM_Src.DekretColumn),Integer) + End Get + Set + Me(Me.tableTbmy_ImpDM_Src.DekretColumn) = value + End Set + End Property + + _ + Public Property DZK_Dziennik() As String + Get + If Me.IsDZK_DziennikNull Then + Return Nothing + Else + Return CType(Me(Me.tableTbmy_ImpDM_Src.DZK_DziennikColumn),String) + End If + End Get + Set + Me(Me.tableTbmy_ImpDM_Src.DZK_DziennikColumn) = value + End Set + End Property + + _ + Public Property DataImportu() As Date + Get + Try + Return CType(Me(Me.tableTbmy_ImpDM_Src.DataImportuColumn),Date) + Catch e As Global.System.InvalidCastException + Throw New Global.System.Data.StrongTypingException("Wartość z kolumny 'DataImportu' w tabeli 'Tbmy_ImpDM_Src' to DBNull.", e) + End Try + End Get + Set + Me(Me.tableTbmy_ImpDM_Src.DataImportuColumn) = value + End Set + End Property + + _ + Public Property DZK_Opis() As String + Get + If Me.IsDZK_OpisNull Then + Return Nothing + Else + Return CType(Me(Me.tableTbmy_ImpDM_Src.DZK_OpisColumn),String) + End If + End Get + Set + Me(Me.tableTbmy_ImpDM_Src.DZK_OpisColumn) = value + End Set + End Property + + _ + Public Property SumaCT() As Decimal + Get + Try + Return CType(Me(Me.tableTbmy_ImpDM_Src.SumaCTColumn),Decimal) + Catch e As Global.System.InvalidCastException + Throw New Global.System.Data.StrongTypingException("Wartość z kolumny 'SumaCT' w tabeli 'Tbmy_ImpDM_Src' to DBNull.", e) + End Try + End Get + Set + Me(Me.tableTbmy_ImpDM_Src.SumaCTColumn) = value + End Set + End Property + + _ + Public Property SumaDT() As Decimal + Get + Try + Return CType(Me(Me.tableTbmy_ImpDM_Src.SumaDTColumn),Decimal) + Catch e As Global.System.InvalidCastException + Throw New Global.System.Data.StrongTypingException("Wartość z kolumny 'SumaDT' w tabeli 'Tbmy_ImpDM_Src' to DBNull.", e) + End Try + End Get + Set + Me(Me.tableTbmy_ImpDM_Src.SumaDTColumn) = value + End Set + End Property + + _ + Public Property Magazyn() As String + Get + If Me.IsMagazynNull Then + Return Nothing + Else + Return CType(Me(Me.tableTbmy_ImpDM_Src.MagazynColumn),String) + End If + End Get + Set + Me(Me.tableTbmy_ImpDM_Src.MagazynColumn) = value + End Set + End Property + + _ + Public Property Kontrahent() As String + Get + If Me.IsKontrahentNull Then + Return Nothing + Else + Return CType(Me(Me.tableTbmy_ImpDM_Src.KontrahentColumn),String) + End If + End Get + Set + Me(Me.tableTbmy_ImpDM_Src.KontrahentColumn) = value + End Set + End Property + + _ + Public Property Opis() As String + Get + If Me.IsOpisNull Then + Return Nothing + Else + Return CType(Me(Me.tableTbmy_ImpDM_Src.OpisColumn),String) + End If + End Get + Set + Me(Me.tableTbmy_ImpDM_Src.OpisColumn) = value + End Set + End Property + + _ + Public Property DokKoryg() As String + Get + If Me.IsDokKorygNull Then + Return Nothing + Else + Return CType(Me(Me.tableTbmy_ImpDM_Src.DokKorygColumn),String) + End If + End Get + Set + Me(Me.tableTbmy_ImpDM_Src.DokKorygColumn) = value + End Set + End Property + + _ + Public Function IsDokumentNull() As Boolean + Return Me.IsNull(Me.tableTbmy_ImpDM_Src.DokumentColumn) + End Function + + _ + Public Sub SetDokumentNull() + Me(Me.tableTbmy_ImpDM_Src.DokumentColumn) = Global.System.Convert.DBNull + End Sub + + _ + Public Function IsRokMiesiacNull() As Boolean + Return Me.IsNull(Me.tableTbmy_ImpDM_Src.RokMiesiacColumn) + End Function + + _ + Public Sub SetRokMiesiacNull() + Me(Me.tableTbmy_ImpDM_Src.RokMiesiacColumn) = Global.System.Convert.DBNull + End Sub + + _ + Public Function IsDataWystNull() As Boolean + Return Me.IsNull(Me.tableTbmy_ImpDM_Src.DataWystColumn) + End Function + + _ + Public Sub SetDataWystNull() + Me(Me.tableTbmy_ImpDM_Src.DataWystColumn) = Global.System.Convert.DBNull + End Sub + + _ + Public Function IsDataOperNull() As Boolean + Return Me.IsNull(Me.tableTbmy_ImpDM_Src.DataOperColumn) + End Function + + _ + Public Sub SetDataOperNull() + Me(Me.tableTbmy_ImpDM_Src.DataOperColumn) = Global.System.Convert.DBNull + End Sub + + _ + Public Function IsDokZrNull() As Boolean + Return Me.IsNull(Me.tableTbmy_ImpDM_Src.DokZrColumn) + End Function + + _ + Public Sub SetDokZrNull() + Me(Me.tableTbmy_ImpDM_Src.DokZrColumn) = Global.System.Convert.DBNull + End Sub + + _ + Public Function IsDZK_DziennikNull() As Boolean + Return Me.IsNull(Me.tableTbmy_ImpDM_Src.DZK_DziennikColumn) + End Function + + _ + Public Sub SetDZK_DziennikNull() + Me(Me.tableTbmy_ImpDM_Src.DZK_DziennikColumn) = Global.System.Convert.DBNull + End Sub + + _ + Public Function IsDataImportuNull() As Boolean + Return Me.IsNull(Me.tableTbmy_ImpDM_Src.DataImportuColumn) + End Function + + _ + Public Sub SetDataImportuNull() + Me(Me.tableTbmy_ImpDM_Src.DataImportuColumn) = Global.System.Convert.DBNull + End Sub + + _ + Public Function IsDZK_OpisNull() As Boolean + Return Me.IsNull(Me.tableTbmy_ImpDM_Src.DZK_OpisColumn) + End Function + + _ + Public Sub SetDZK_OpisNull() + Me(Me.tableTbmy_ImpDM_Src.DZK_OpisColumn) = Global.System.Convert.DBNull + End Sub + + _ + Public Function IsSumaCTNull() As Boolean + Return Me.IsNull(Me.tableTbmy_ImpDM_Src.SumaCTColumn) + End Function + + _ + Public Sub SetSumaCTNull() + Me(Me.tableTbmy_ImpDM_Src.SumaCTColumn) = Global.System.Convert.DBNull + End Sub + + _ + Public Function IsSumaDTNull() As Boolean + Return Me.IsNull(Me.tableTbmy_ImpDM_Src.SumaDTColumn) + End Function + + _ + Public Sub SetSumaDTNull() + Me(Me.tableTbmy_ImpDM_Src.SumaDTColumn) = Global.System.Convert.DBNull + End Sub + + _ + Public Function IsMagazynNull() As Boolean + Return Me.IsNull(Me.tableTbmy_ImpDM_Src.MagazynColumn) + End Function + + _ + Public Sub SetMagazynNull() + Me(Me.tableTbmy_ImpDM_Src.MagazynColumn) = Global.System.Convert.DBNull + End Sub + + _ + Public Function IsKontrahentNull() As Boolean + Return Me.IsNull(Me.tableTbmy_ImpDM_Src.KontrahentColumn) + End Function + + _ + Public Sub SetKontrahentNull() + Me(Me.tableTbmy_ImpDM_Src.KontrahentColumn) = Global.System.Convert.DBNull + End Sub + + _ + Public Function IsOpisNull() As Boolean + Return Me.IsNull(Me.tableTbmy_ImpDM_Src.OpisColumn) + End Function + + _ + Public Sub SetOpisNull() + Me(Me.tableTbmy_ImpDM_Src.OpisColumn) = Global.System.Convert.DBNull + End Sub + + _ + Public Function IsDokKorygNull() As Boolean + Return Me.IsNull(Me.tableTbmy_ImpDM_Src.DokKorygColumn) + End Function + + _ + Public Sub SetDokKorygNull() + Me(Me.tableTbmy_ImpDM_Src.DokKorygColumn) = Global.System.Convert.DBNull + End Sub + End Class + + ''' + '''Represents strongly named DataRow class. + ''' + Partial Public Class Tbmy_ImpDM_DekrRow + Inherits Global.System.Data.DataRow + + Private tableTbmy_ImpDM_Dekr As Tbmy_ImpDM_DekrDataTable + + _ + Friend Sub New(ByVal rb As Global.System.Data.DataRowBuilder) + MyBase.New(rb) + Me.tableTbmy_ImpDM_Dekr = CType(Me.Table,Tbmy_ImpDM_DekrDataTable) + End Sub + + _ + Public Property Lp() As Long + Get + Try + Return CType(Me(Me.tableTbmy_ImpDM_Dekr.LpColumn),Long) + Catch e As Global.System.InvalidCastException + Throw New Global.System.Data.StrongTypingException("Wartość z kolumny 'Lp' w tabeli 'Tbmy_ImpDM_Dekr' to DBNull.", e) + End Try + End Get + Set + Me(Me.tableTbmy_ImpDM_Dekr.LpColumn) = value + End Set + End Property + + _ + Public Property DZK_Opis() As String + Get + Try + Return CType(Me(Me.tableTbmy_ImpDM_Dekr.DZK_OpisColumn),String) + Catch e As Global.System.InvalidCastException + Throw New Global.System.Data.StrongTypingException("Wartość z kolumny 'DZK_Opis' w tabeli 'Tbmy_ImpDM_Dekr' to DBNull.", e) + End Try + End Get + Set + Me(Me.tableTbmy_ImpDM_Dekr.DZK_OpisColumn) = value + End Set + End Property + + _ + Public Property Data() As Integer + Get + Try + Return CType(Me(Me.tableTbmy_ImpDM_Dekr.DataColumn),Integer) + Catch e As Global.System.InvalidCastException + Throw New Global.System.Data.StrongTypingException("Wartość z kolumny 'Data' w tabeli 'Tbmy_ImpDM_Dekr' to DBNull.", e) + End Try + End Get + Set + Me(Me.tableTbmy_ImpDM_Dekr.DataColumn) = value + End Set + End Property + + _ + Public Property DataDokumentu() As Integer + Get + Try + Return CType(Me(Me.tableTbmy_ImpDM_Dekr.DataDokumentuColumn),Integer) + Catch e As Global.System.InvalidCastException + Throw New Global.System.Data.StrongTypingException("Wartość z kolumny 'DataDokumentu' w tabeli 'Tbmy_ImpDM_Dekr' to DBNull.", e) + End Try + End Get + Set + Me(Me.tableTbmy_ImpDM_Dekr.DataDokumentuColumn) = value + End Set + End Property + + _ + Public Property Kwota() As Decimal + Get + Try + Return CType(Me(Me.tableTbmy_ImpDM_Dekr.KwotaColumn),Decimal) + Catch e As Global.System.InvalidCastException + Throw New Global.System.Data.StrongTypingException("Wartość z kolumny 'Kwota' w tabeli 'Tbmy_ImpDM_Dekr' to DBNull.", e) + End Try + End Get + Set + Me(Me.tableTbmy_ImpDM_Dekr.KwotaColumn) = value + End Set + End Property + + _ + Public Property DokZr() As String + Get + Try + Return CType(Me(Me.tableTbmy_ImpDM_Dekr.DokZrColumn),String) + Catch e As Global.System.InvalidCastException + Throw New Global.System.Data.StrongTypingException("Wartość z kolumny 'DokZr' w tabeli 'Tbmy_ImpDM_Dekr' to DBNull.", e) + End Try + End Get + Set + Me(Me.tableTbmy_ImpDM_Dekr.DokZrColumn) = value + End Set + End Property + + _ + Public Property KontoDebet() As String + Get + Try + Return CType(Me(Me.tableTbmy_ImpDM_Dekr.KontoDebetColumn),String) + Catch e As Global.System.InvalidCastException + Throw New Global.System.Data.StrongTypingException("Wartość z kolumny 'KontoDebet' w tabeli 'Tbmy_ImpDM_Dekr' to DBNull.", e) + End Try + End Get + Set + Me(Me.tableTbmy_ImpDM_Dekr.KontoDebetColumn) = value + End Set + End Property + + _ + Public Property KontoCredit() As String + Get + Try + Return CType(Me(Me.tableTbmy_ImpDM_Dekr.KontoCreditColumn),String) + Catch e As Global.System.InvalidCastException + Throw New Global.System.Data.StrongTypingException("Wartość z kolumny 'KontoCredit' w tabeli 'Tbmy_ImpDM_Dekr' to DBNull.", e) + End Try + End Get + Set + Me(Me.tableTbmy_ImpDM_Dekr.KontoCreditColumn) = value + End Set + End Property + + _ + Public Property Identyfikator() As String + Get + Try + Return CType(Me(Me.tableTbmy_ImpDM_Dekr.IdentyfikatorColumn),String) + Catch e As Global.System.InvalidCastException + Throw New Global.System.Data.StrongTypingException("Wartość z kolumny 'Identyfikator' w tabeli 'Tbmy_ImpDM_Dekr' to DBNull.", e) + End Try + End Get + Set + Me(Me.tableTbmy_ImpDM_Dekr.IdentyfikatorColumn) = value + End Set + End Property + + _ + Public Property Opis() As String + Get + Try + Return CType(Me(Me.tableTbmy_ImpDM_Dekr.OpisColumn),String) + Catch e As Global.System.InvalidCastException + Throw New Global.System.Data.StrongTypingException("Wartość z kolumny 'Opis' w tabeli 'Tbmy_ImpDM_Dekr' to DBNull.", e) + End Try + End Get + Set + Me(Me.tableTbmy_ImpDM_Dekr.OpisColumn) = value + End Set + End Property + + _ + Public Property DataImportu() As Date + Get + Try + Return CType(Me(Me.tableTbmy_ImpDM_Dekr.DataImportuColumn),Date) + Catch e As Global.System.InvalidCastException + Throw New Global.System.Data.StrongTypingException("Wartość z kolumny 'DataImportu' w tabeli 'Tbmy_ImpDM_Dekr' to DBNull.", e) + End Try + End Get + Set + Me(Me.tableTbmy_ImpDM_Dekr.DataImportuColumn) = value + End Set + End Property + + _ + Public Function IsLpNull() As Boolean + Return Me.IsNull(Me.tableTbmy_ImpDM_Dekr.LpColumn) + End Function + + _ + Public Sub SetLpNull() + Me(Me.tableTbmy_ImpDM_Dekr.LpColumn) = Global.System.Convert.DBNull + End Sub + + _ + Public Function IsDZK_OpisNull() As Boolean + Return Me.IsNull(Me.tableTbmy_ImpDM_Dekr.DZK_OpisColumn) + End Function + + _ + Public Sub SetDZK_OpisNull() + Me(Me.tableTbmy_ImpDM_Dekr.DZK_OpisColumn) = Global.System.Convert.DBNull + End Sub + + _ + Public Function IsDataNull() As Boolean + Return Me.IsNull(Me.tableTbmy_ImpDM_Dekr.DataColumn) + End Function + + _ + Public Sub SetDataNull() + Me(Me.tableTbmy_ImpDM_Dekr.DataColumn) = Global.System.Convert.DBNull + End Sub + + _ + Public Function IsDataDokumentuNull() As Boolean + Return Me.IsNull(Me.tableTbmy_ImpDM_Dekr.DataDokumentuColumn) + End Function + + _ + Public Sub SetDataDokumentuNull() + Me(Me.tableTbmy_ImpDM_Dekr.DataDokumentuColumn) = Global.System.Convert.DBNull + End Sub + + _ + Public Function IsKwotaNull() As Boolean + Return Me.IsNull(Me.tableTbmy_ImpDM_Dekr.KwotaColumn) + End Function + + _ + Public Sub SetKwotaNull() + Me(Me.tableTbmy_ImpDM_Dekr.KwotaColumn) = Global.System.Convert.DBNull + End Sub + + _ + Public Function IsDokZrNull() As Boolean + Return Me.IsNull(Me.tableTbmy_ImpDM_Dekr.DokZrColumn) + End Function + + _ + Public Sub SetDokZrNull() + Me(Me.tableTbmy_ImpDM_Dekr.DokZrColumn) = Global.System.Convert.DBNull + End Sub + + _ + Public Function IsKontoDebetNull() As Boolean + Return Me.IsNull(Me.tableTbmy_ImpDM_Dekr.KontoDebetColumn) + End Function + + _ + Public Sub SetKontoDebetNull() + Me(Me.tableTbmy_ImpDM_Dekr.KontoDebetColumn) = Global.System.Convert.DBNull + End Sub + + _ + Public Function IsKontoCreditNull() As Boolean + Return Me.IsNull(Me.tableTbmy_ImpDM_Dekr.KontoCreditColumn) + End Function + + _ + Public Sub SetKontoCreditNull() + Me(Me.tableTbmy_ImpDM_Dekr.KontoCreditColumn) = Global.System.Convert.DBNull + End Sub + + _ + Public Function IsIdentyfikatorNull() As Boolean + Return Me.IsNull(Me.tableTbmy_ImpDM_Dekr.IdentyfikatorColumn) + End Function + + _ + Public Sub SetIdentyfikatorNull() + Me(Me.tableTbmy_ImpDM_Dekr.IdentyfikatorColumn) = Global.System.Convert.DBNull + End Sub + + _ + Public Function IsOpisNull() As Boolean + Return Me.IsNull(Me.tableTbmy_ImpDM_Dekr.OpisColumn) + End Function + + _ + Public Sub SetOpisNull() + Me(Me.tableTbmy_ImpDM_Dekr.OpisColumn) = Global.System.Convert.DBNull + End Sub + + _ + Public Function IsDataImportuNull() As Boolean + Return Me.IsNull(Me.tableTbmy_ImpDM_Dekr.DataImportuColumn) + End Function + + _ + Public Sub SetDataImportuNull() + Me(Me.tableTbmy_ImpDM_Dekr.DataImportuColumn) = Global.System.Convert.DBNull + End Sub + End Class + + ''' + '''Represents strongly named DataRow class. + ''' + Partial Public Class Tbmy_ImpDM_KontaRow + Inherits Global.System.Data.DataRow + + Private tableTbmy_ImpDM_Konta As Tbmy_ImpDM_KontaDataTable + + _ + Friend Sub New(ByVal rb As Global.System.Data.DataRowBuilder) + MyBase.New(rb) + Me.tableTbmy_ImpDM_Konta = CType(Me.Table,Tbmy_ImpDM_KontaDataTable) + End Sub + + _ + Public Property Konto() As String + Get + Try + Return CType(Me(Me.tableTbmy_ImpDM_Konta.KontoColumn),String) + Catch e As Global.System.InvalidCastException + Throw New Global.System.Data.StrongTypingException("Wartość z kolumny 'Konto' w tabeli 'Tbmy_ImpDM_Konta' to DBNull.", e) + End Try + End Get + Set + Me(Me.tableTbmy_ImpDM_Konta.KontoColumn) = value + End Set + End Property + + _ + Public Function IsKontoNull() As Boolean + Return Me.IsNull(Me.tableTbmy_ImpDM_Konta.KontoColumn) + End Function + + _ + Public Sub SetKontoNull() + Me(Me.tableTbmy_ImpDM_Konta.KontoColumn) = Global.System.Convert.DBNull + End Sub + End Class + + ''' + '''Row event argument class + ''' + _ + Public Class Tbmy_ImpDM_SrcRowChangeEvent + Inherits Global.System.EventArgs + + Private eventRow As Tbmy_ImpDM_SrcRow + + Private eventAction As Global.System.Data.DataRowAction + + _ + Public Sub New(ByVal row As Tbmy_ImpDM_SrcRow, ByVal action As Global.System.Data.DataRowAction) + MyBase.New + Me.eventRow = row + Me.eventAction = action + End Sub + + _ + Public ReadOnly Property Row() As Tbmy_ImpDM_SrcRow + Get + Return Me.eventRow + End Get + End Property + + _ + Public ReadOnly Property Action() As Global.System.Data.DataRowAction + Get + Return Me.eventAction + End Get + End Property + End Class + + ''' + '''Row event argument class + ''' + _ + Public Class Tbmy_ImpDM_DekrRowChangeEvent + Inherits Global.System.EventArgs + + Private eventRow As Tbmy_ImpDM_DekrRow + + Private eventAction As Global.System.Data.DataRowAction + + _ + Public Sub New(ByVal row As Tbmy_ImpDM_DekrRow, ByVal action As Global.System.Data.DataRowAction) + MyBase.New + Me.eventRow = row + Me.eventAction = action + End Sub + + _ + Public ReadOnly Property Row() As Tbmy_ImpDM_DekrRow + Get + Return Me.eventRow + End Get + End Property + + _ + Public ReadOnly Property Action() As Global.System.Data.DataRowAction + Get + Return Me.eventAction + End Get + End Property + End Class + + ''' + '''Row event argument class + ''' + _ + Public Class Tbmy_ImpDM_KontaRowChangeEvent + Inherits Global.System.EventArgs + + Private eventRow As Tbmy_ImpDM_KontaRow + + Private eventAction As Global.System.Data.DataRowAction + + _ + Public Sub New(ByVal row As Tbmy_ImpDM_KontaRow, ByVal action As Global.System.Data.DataRowAction) + MyBase.New + Me.eventRow = row + Me.eventAction = action + End Sub + + _ + Public ReadOnly Property Row() As Tbmy_ImpDM_KontaRow + Get + Return Me.eventRow + End Get + End Property + + _ + Public ReadOnly Property Action() As Global.System.Data.DataRowAction + Get + Return Me.eventAction + End Get + End Property + End Class +End Class + +Namespace DsMainTableAdapters + + ''' + '''Represents the connection and commands used to retrieve and save data. + ''' + _ + Partial Public Class Tamy_ImpDM_Src + Inherits Global.System.ComponentModel.Component + + Private WithEvents _adapter As Global.System.Data.SqlClient.SqlDataAdapter + + Private _connection As Global.System.Data.SqlClient.SqlConnection + + Private _transaction As Global.System.Data.SqlClient.SqlTransaction + + Private _commandCollection() As Global.System.Data.SqlClient.SqlCommand + + Private _clearBeforeFill As Boolean + + _ + Public Sub New() + MyBase.New + Me.ClearBeforeFill = true + End Sub + + _ + Protected Friend ReadOnly Property Adapter() As Global.System.Data.SqlClient.SqlDataAdapter + Get + If (Me._adapter Is Nothing) Then + Me.InitAdapter + End If + Return Me._adapter + End Get + End Property + + _ + Friend Property Connection() As Global.System.Data.SqlClient.SqlConnection + Get + If (Me._connection Is Nothing) Then + Me.InitConnection + End If + Return Me._connection + End Get + Set + Me._connection = value + If (Not (Me.Adapter.InsertCommand) Is Nothing) Then + Me.Adapter.InsertCommand.Connection = value + End If + If (Not (Me.Adapter.DeleteCommand) Is Nothing) Then + Me.Adapter.DeleteCommand.Connection = value + End If + If (Not (Me.Adapter.UpdateCommand) Is Nothing) Then + Me.Adapter.UpdateCommand.Connection = value + End If + Dim i As Integer = 0 + Do While (i < Me.CommandCollection.Length) + If (Not (Me.CommandCollection(i)) Is Nothing) Then + CType(Me.CommandCollection(i),Global.System.Data.SqlClient.SqlCommand).Connection = value + End If + i = (i + 1) + Loop + End Set + End Property + + _ + Friend Property Transaction() As Global.System.Data.SqlClient.SqlTransaction + Get + Return Me._transaction + End Get + Set + Me._transaction = value + Dim i As Integer = 0 + Do While (i < Me.CommandCollection.Length) + Me.CommandCollection(i).Transaction = Me._transaction + i = (i + 1) + Loop + If ((Not (Me.Adapter) Is Nothing) _ + AndAlso (Not (Me.Adapter.DeleteCommand) Is Nothing)) Then + Me.Adapter.DeleteCommand.Transaction = Me._transaction + End If + If ((Not (Me.Adapter) Is Nothing) _ + AndAlso (Not (Me.Adapter.InsertCommand) Is Nothing)) Then + Me.Adapter.InsertCommand.Transaction = Me._transaction + End If + If ((Not (Me.Adapter) Is Nothing) _ + AndAlso (Not (Me.Adapter.UpdateCommand) Is Nothing)) Then + Me.Adapter.UpdateCommand.Transaction = Me._transaction + End If + End Set + End Property + + _ + Protected ReadOnly Property CommandCollection() As Global.System.Data.SqlClient.SqlCommand() + Get + If (Me._commandCollection Is Nothing) Then + Me.InitCommandCollection + End If + Return Me._commandCollection + End Get + End Property + + _ + Public Property ClearBeforeFill() As Boolean + Get + Return Me._clearBeforeFill + End Get + Set + Me._clearBeforeFill = value + End Set + End Property + + _ + Private Sub InitAdapter() + Me._adapter = New Global.System.Data.SqlClient.SqlDataAdapter() + Dim tableMapping As Global.System.Data.Common.DataTableMapping = New Global.System.Data.Common.DataTableMapping() + tableMapping.SourceTable = "Table" + tableMapping.DataSetTable = "Tbmy_ImpDM_Src" + tableMapping.ColumnMappings.Add("Lp", "Lp") + tableMapping.ColumnMappings.Add("Dokument", "Dokument") + tableMapping.ColumnMappings.Add("RokMiesiac", "RokMiesiac") + tableMapping.ColumnMappings.Add("DataWyst", "DataWyst") + tableMapping.ColumnMappings.Add("DataOper", "DataOper") + tableMapping.ColumnMappings.Add("DokZr", "DokZr") + tableMapping.ColumnMappings.Add("Dekret", "Dekret") + tableMapping.ColumnMappings.Add("DZK_Dziennik", "DZK_Dziennik") + tableMapping.ColumnMappings.Add("DataImportu", "DataImportu") + tableMapping.ColumnMappings.Add("DZK_Opis", "DZK_Opis") + tableMapping.ColumnMappings.Add("SumaCT", "SumaCT") + tableMapping.ColumnMappings.Add("SumaDT", "SumaDT") + tableMapping.ColumnMappings.Add("Magazyn", "Magazyn") + tableMapping.ColumnMappings.Add("Kontrahent", "Kontrahent") + tableMapping.ColumnMappings.Add("Opis", "Opis") + tableMapping.ColumnMappings.Add("DokKoryg", "DokKoryg") + Me._adapter.TableMappings.Add(tableMapping) + End Sub + + _ + Private Sub InitConnection() + Me._connection = New Global.System.Data.SqlClient.SqlConnection() + Me._connection.ConnectionString = Global.ImportDokMag.My.MySettings.Default.CS_Src + End Sub + + _ + Private Sub InitCommandCollection() + Me._commandCollection = New Global.System.Data.SqlClient.SqlCommand(0) {} + Me._commandCollection(0) = New Global.System.Data.SqlClient.SqlCommand() + Me._commandCollection(0).Connection = Me.Connection + Me._commandCollection(0).CommandText = "CDN.my_ImpDM_Src" + Me._commandCollection(0).CommandType = Global.System.Data.CommandType.StoredProcedure + Me._commandCollection(0).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@RETURN_VALUE", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.ReturnValue, 10, 0, Nothing, Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) + Me._commandCollection(0).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@SP", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.Input, 10, 0, Nothing, Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) + Me._commandCollection(0).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@ZAK", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.Input, 10, 0, Nothing, Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) + Me._commandCollection(0).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@WEW", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.Input, 10, 0, Nothing, Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) + Me._commandCollection(0).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@RM", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.Input, 10, 0, Nothing, Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) + Me._commandCollection(0).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Rok", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.Input, 10, 0, Nothing, Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) + Me._commandCollection(0).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Miesiac", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.Input, 10, 0, Nothing, Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) + Me._commandCollection(0).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Konto", Global.System.Data.SqlDbType.VarChar, 200, Global.System.Data.ParameterDirection.Input, 0, 0, Nothing, Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) + Me._commandCollection(0).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Import", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.Input, 10, 0, Nothing, Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) + End Sub + + _ + Public Overloads Overridable Function Fill(ByVal dataTable As DsMain.Tbmy_ImpDM_SrcDataTable, ByVal SP As Global.System.Nullable(Of Integer), ByVal ZAK As Global.System.Nullable(Of Integer), ByVal WEW As Global.System.Nullable(Of Integer), ByVal RM As Global.System.Nullable(Of Integer), ByVal Rok As Global.System.Nullable(Of Integer), ByVal Miesiac As Global.System.Nullable(Of Integer), ByVal Konto As String, ByVal Import As Global.System.Nullable(Of Integer)) As Integer + Me.Adapter.SelectCommand = Me.CommandCollection(0) + If (SP.HasValue = true) Then + Me.Adapter.SelectCommand.Parameters(1).Value = CType(SP.Value,Integer) + Else + Me.Adapter.SelectCommand.Parameters(1).Value = Global.System.DBNull.Value + End If + If (ZAK.HasValue = true) Then + Me.Adapter.SelectCommand.Parameters(2).Value = CType(ZAK.Value,Integer) + Else + Me.Adapter.SelectCommand.Parameters(2).Value = Global.System.DBNull.Value + End If + If (WEW.HasValue = true) Then + Me.Adapter.SelectCommand.Parameters(3).Value = CType(WEW.Value,Integer) + Else + Me.Adapter.SelectCommand.Parameters(3).Value = Global.System.DBNull.Value + End If + If (RM.HasValue = true) Then + Me.Adapter.SelectCommand.Parameters(4).Value = CType(RM.Value,Integer) + Else + Me.Adapter.SelectCommand.Parameters(4).Value = Global.System.DBNull.Value + End If + If (Rok.HasValue = true) Then + Me.Adapter.SelectCommand.Parameters(5).Value = CType(Rok.Value,Integer) + Else + Me.Adapter.SelectCommand.Parameters(5).Value = Global.System.DBNull.Value + End If + If (Miesiac.HasValue = true) Then + Me.Adapter.SelectCommand.Parameters(6).Value = CType(Miesiac.Value,Integer) + Else + Me.Adapter.SelectCommand.Parameters(6).Value = Global.System.DBNull.Value + End If + If (Konto Is Nothing) Then + Me.Adapter.SelectCommand.Parameters(7).Value = Global.System.DBNull.Value + Else + Me.Adapter.SelectCommand.Parameters(7).Value = CType(Konto,String) + End If + If (Import.HasValue = true) Then + Me.Adapter.SelectCommand.Parameters(8).Value = CType(Import.Value,Integer) + Else + Me.Adapter.SelectCommand.Parameters(8).Value = Global.System.DBNull.Value + End If + If (Me.ClearBeforeFill = true) Then + dataTable.Clear + End If + Dim returnValue As Integer = Me.Adapter.Fill(dataTable) + Return returnValue + End Function + + _ + Public Overloads Overridable Function GetData(ByVal SP As Global.System.Nullable(Of Integer), ByVal ZAK As Global.System.Nullable(Of Integer), ByVal WEW As Global.System.Nullable(Of Integer), ByVal RM As Global.System.Nullable(Of Integer), ByVal Rok As Global.System.Nullable(Of Integer), ByVal Miesiac As Global.System.Nullable(Of Integer), ByVal Konto As String, ByVal Import As Global.System.Nullable(Of Integer)) As DsMain.Tbmy_ImpDM_SrcDataTable + Me.Adapter.SelectCommand = Me.CommandCollection(0) + If (SP.HasValue = true) Then + Me.Adapter.SelectCommand.Parameters(1).Value = CType(SP.Value,Integer) + Else + Me.Adapter.SelectCommand.Parameters(1).Value = Global.System.DBNull.Value + End If + If (ZAK.HasValue = true) Then + Me.Adapter.SelectCommand.Parameters(2).Value = CType(ZAK.Value,Integer) + Else + Me.Adapter.SelectCommand.Parameters(2).Value = Global.System.DBNull.Value + End If + If (WEW.HasValue = true) Then + Me.Adapter.SelectCommand.Parameters(3).Value = CType(WEW.Value,Integer) + Else + Me.Adapter.SelectCommand.Parameters(3).Value = Global.System.DBNull.Value + End If + If (RM.HasValue = true) Then + Me.Adapter.SelectCommand.Parameters(4).Value = CType(RM.Value,Integer) + Else + Me.Adapter.SelectCommand.Parameters(4).Value = Global.System.DBNull.Value + End If + If (Rok.HasValue = true) Then + Me.Adapter.SelectCommand.Parameters(5).Value = CType(Rok.Value,Integer) + Else + Me.Adapter.SelectCommand.Parameters(5).Value = Global.System.DBNull.Value + End If + If (Miesiac.HasValue = true) Then + Me.Adapter.SelectCommand.Parameters(6).Value = CType(Miesiac.Value,Integer) + Else + Me.Adapter.SelectCommand.Parameters(6).Value = Global.System.DBNull.Value + End If + If (Konto Is Nothing) Then + Me.Adapter.SelectCommand.Parameters(7).Value = Global.System.DBNull.Value + Else + Me.Adapter.SelectCommand.Parameters(7).Value = CType(Konto,String) + End If + If (Import.HasValue = true) Then + Me.Adapter.SelectCommand.Parameters(8).Value = CType(Import.Value,Integer) + Else + Me.Adapter.SelectCommand.Parameters(8).Value = Global.System.DBNull.Value + End If + Dim dataTable As DsMain.Tbmy_ImpDM_SrcDataTable = New DsMain.Tbmy_ImpDM_SrcDataTable() + Me.Adapter.Fill(dataTable) + Return dataTable + End Function + End Class + + ''' + '''Represents the connection and commands used to retrieve and save data. + ''' + _ + Partial Public Class Tamy_ImpDM_Dekr + Inherits Global.System.ComponentModel.Component + + Private WithEvents _adapter As Global.System.Data.SqlClient.SqlDataAdapter + + Private _connection As Global.System.Data.SqlClient.SqlConnection + + Private _transaction As Global.System.Data.SqlClient.SqlTransaction + + Private _commandCollection() As Global.System.Data.SqlClient.SqlCommand + + Private _clearBeforeFill As Boolean + + _ + Public Sub New() + MyBase.New + Me.ClearBeforeFill = true + End Sub + + _ + Protected Friend ReadOnly Property Adapter() As Global.System.Data.SqlClient.SqlDataAdapter + Get + If (Me._adapter Is Nothing) Then + Me.InitAdapter + End If + Return Me._adapter + End Get + End Property + + _ + Friend Property Connection() As Global.System.Data.SqlClient.SqlConnection + Get + If (Me._connection Is Nothing) Then + Me.InitConnection + End If + Return Me._connection + End Get + Set + Me._connection = value + If (Not (Me.Adapter.InsertCommand) Is Nothing) Then + Me.Adapter.InsertCommand.Connection = value + End If + If (Not (Me.Adapter.DeleteCommand) Is Nothing) Then + Me.Adapter.DeleteCommand.Connection = value + End If + If (Not (Me.Adapter.UpdateCommand) Is Nothing) Then + Me.Adapter.UpdateCommand.Connection = value + End If + Dim i As Integer = 0 + Do While (i < Me.CommandCollection.Length) + If (Not (Me.CommandCollection(i)) Is Nothing) Then + CType(Me.CommandCollection(i),Global.System.Data.SqlClient.SqlCommand).Connection = value + End If + i = (i + 1) + Loop + End Set + End Property + + _ + Friend Property Transaction() As Global.System.Data.SqlClient.SqlTransaction + Get + Return Me._transaction + End Get + Set + Me._transaction = value + Dim i As Integer = 0 + Do While (i < Me.CommandCollection.Length) + Me.CommandCollection(i).Transaction = Me._transaction + i = (i + 1) + Loop + If ((Not (Me.Adapter) Is Nothing) _ + AndAlso (Not (Me.Adapter.DeleteCommand) Is Nothing)) Then + Me.Adapter.DeleteCommand.Transaction = Me._transaction + End If + If ((Not (Me.Adapter) Is Nothing) _ + AndAlso (Not (Me.Adapter.InsertCommand) Is Nothing)) Then + Me.Adapter.InsertCommand.Transaction = Me._transaction + End If + If ((Not (Me.Adapter) Is Nothing) _ + AndAlso (Not (Me.Adapter.UpdateCommand) Is Nothing)) Then + Me.Adapter.UpdateCommand.Transaction = Me._transaction + End If + End Set + End Property + + _ + Protected ReadOnly Property CommandCollection() As Global.System.Data.SqlClient.SqlCommand() + Get + If (Me._commandCollection Is Nothing) Then + Me.InitCommandCollection + End If + Return Me._commandCollection + End Get + End Property + + _ + Public Property ClearBeforeFill() As Boolean + Get + Return Me._clearBeforeFill + End Get + Set + Me._clearBeforeFill = value + End Set + End Property + + _ + Private Sub InitAdapter() + Me._adapter = New Global.System.Data.SqlClient.SqlDataAdapter() + Dim tableMapping As Global.System.Data.Common.DataTableMapping = New Global.System.Data.Common.DataTableMapping() + tableMapping.SourceTable = "Table" + tableMapping.DataSetTable = "Tbmy_ImpDM_Dekr" + tableMapping.ColumnMappings.Add("Lp", "Lp") + tableMapping.ColumnMappings.Add("DZK_Opis", "DZK_Opis") + tableMapping.ColumnMappings.Add("Data", "Data") + tableMapping.ColumnMappings.Add("DataDokumentu", "DataDokumentu") + tableMapping.ColumnMappings.Add("Kwota", "Kwota") + tableMapping.ColumnMappings.Add("DokZr", "DokZr") + tableMapping.ColumnMappings.Add("KontoDebet", "KontoDebet") + tableMapping.ColumnMappings.Add("KontoCredit", "KontoCredit") + tableMapping.ColumnMappings.Add("Identyfikator", "Identyfikator") + tableMapping.ColumnMappings.Add("Opis", "Opis") + tableMapping.ColumnMappings.Add("DataImportu", "DataImportu") + Me._adapter.TableMappings.Add(tableMapping) + End Sub + + _ + Private Sub InitConnection() + Me._connection = New Global.System.Data.SqlClient.SqlConnection() + Me._connection.ConnectionString = Global.ImportDokMag.My.MySettings.Default.CS_Src + End Sub + + _ + Private Sub InitCommandCollection() + Me._commandCollection = New Global.System.Data.SqlClient.SqlCommand(0) {} + Me._commandCollection(0) = New Global.System.Data.SqlClient.SqlCommand() + Me._commandCollection(0).Connection = Me.Connection + Me._commandCollection(0).CommandText = "CDN.my_ImpDM_Dekr" + Me._commandCollection(0).CommandType = Global.System.Data.CommandType.StoredProcedure + Me._commandCollection(0).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@RETURN_VALUE", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.ReturnValue, 10, 0, Nothing, Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) + Me._commandCollection(0).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@DZKNr", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.Input, 10, 0, Nothing, Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) + End Sub + + _ + Public Overloads Overridable Function Fill(ByVal dataTable As DsMain.Tbmy_ImpDM_DekrDataTable, ByVal DZKNr As Global.System.Nullable(Of Integer)) As Integer + Me.Adapter.SelectCommand = Me.CommandCollection(0) + If (DZKNr.HasValue = true) Then + Me.Adapter.SelectCommand.Parameters(1).Value = CType(DZKNr.Value,Integer) + Else + Me.Adapter.SelectCommand.Parameters(1).Value = Global.System.DBNull.Value + End If + If (Me.ClearBeforeFill = true) Then + dataTable.Clear + End If + Dim returnValue As Integer = Me.Adapter.Fill(dataTable) + Return returnValue + End Function + + _ + Public Overloads Overridable Function GetData(ByVal DZKNr As Global.System.Nullable(Of Integer)) As DsMain.Tbmy_ImpDM_DekrDataTable + Me.Adapter.SelectCommand = Me.CommandCollection(0) + If (DZKNr.HasValue = true) Then + Me.Adapter.SelectCommand.Parameters(1).Value = CType(DZKNr.Value,Integer) + Else + Me.Adapter.SelectCommand.Parameters(1).Value = Global.System.DBNull.Value + End If + Dim dataTable As DsMain.Tbmy_ImpDM_DekrDataTable = New DsMain.Tbmy_ImpDM_DekrDataTable() + Me.Adapter.Fill(dataTable) + Return dataTable + End Function + End Class + + ''' + '''Represents the connection and commands used to retrieve and save data. + ''' + _ + Partial Public Class Tamy_ImpDM_Konta + Inherits Global.System.ComponentModel.Component + + Private WithEvents _adapter As Global.System.Data.SqlClient.SqlDataAdapter + + Private _connection As Global.System.Data.SqlClient.SqlConnection + + Private _transaction As Global.System.Data.SqlClient.SqlTransaction + + Private _commandCollection() As Global.System.Data.SqlClient.SqlCommand + + Private _clearBeforeFill As Boolean + + _ + Public Sub New() + MyBase.New + Me.ClearBeforeFill = true + End Sub + + _ + Protected Friend ReadOnly Property Adapter() As Global.System.Data.SqlClient.SqlDataAdapter + Get + If (Me._adapter Is Nothing) Then + Me.InitAdapter + End If + Return Me._adapter + End Get + End Property + + _ + Friend Property Connection() As Global.System.Data.SqlClient.SqlConnection + Get + If (Me._connection Is Nothing) Then + Me.InitConnection + End If + Return Me._connection + End Get + Set + Me._connection = value + If (Not (Me.Adapter.InsertCommand) Is Nothing) Then + Me.Adapter.InsertCommand.Connection = value + End If + If (Not (Me.Adapter.DeleteCommand) Is Nothing) Then + Me.Adapter.DeleteCommand.Connection = value + End If + If (Not (Me.Adapter.UpdateCommand) Is Nothing) Then + Me.Adapter.UpdateCommand.Connection = value + End If + Dim i As Integer = 0 + Do While (i < Me.CommandCollection.Length) + If (Not (Me.CommandCollection(i)) Is Nothing) Then + CType(Me.CommandCollection(i),Global.System.Data.SqlClient.SqlCommand).Connection = value + End If + i = (i + 1) + Loop + End Set + End Property + + _ + Friend Property Transaction() As Global.System.Data.SqlClient.SqlTransaction + Get + Return Me._transaction + End Get + Set + Me._transaction = value + Dim i As Integer = 0 + Do While (i < Me.CommandCollection.Length) + Me.CommandCollection(i).Transaction = Me._transaction + i = (i + 1) + Loop + If ((Not (Me.Adapter) Is Nothing) _ + AndAlso (Not (Me.Adapter.DeleteCommand) Is Nothing)) Then + Me.Adapter.DeleteCommand.Transaction = Me._transaction + End If + If ((Not (Me.Adapter) Is Nothing) _ + AndAlso (Not (Me.Adapter.InsertCommand) Is Nothing)) Then + Me.Adapter.InsertCommand.Transaction = Me._transaction + End If + If ((Not (Me.Adapter) Is Nothing) _ + AndAlso (Not (Me.Adapter.UpdateCommand) Is Nothing)) Then + Me.Adapter.UpdateCommand.Transaction = Me._transaction + End If + End Set + End Property + + _ + Protected ReadOnly Property CommandCollection() As Global.System.Data.SqlClient.SqlCommand() + Get + If (Me._commandCollection Is Nothing) Then + Me.InitCommandCollection + End If + Return Me._commandCollection + End Get + End Property + + _ + Public Property ClearBeforeFill() As Boolean + Get + Return Me._clearBeforeFill + End Get + Set + Me._clearBeforeFill = value + End Set + End Property + + _ + Private Sub InitAdapter() + Me._adapter = New Global.System.Data.SqlClient.SqlDataAdapter() + Dim tableMapping As Global.System.Data.Common.DataTableMapping = New Global.System.Data.Common.DataTableMapping() + tableMapping.SourceTable = "Table" + tableMapping.DataSetTable = "Tbmy_ImpDM_Konta" + tableMapping.ColumnMappings.Add("Konto", "Konto") + Me._adapter.TableMappings.Add(tableMapping) + End Sub + + _ + Private Sub InitConnection() + Me._connection = New Global.System.Data.SqlClient.SqlConnection() + Me._connection.ConnectionString = Global.ImportDokMag.My.MySettings.Default.CS_Src + End Sub + + _ + Private Sub InitCommandCollection() + Me._commandCollection = New Global.System.Data.SqlClient.SqlCommand(0) {} + Me._commandCollection(0) = New Global.System.Data.SqlClient.SqlCommand() + Me._commandCollection(0).Connection = Me.Connection + Me._commandCollection(0).CommandText = "CDN.my_ImpDM_Konta" + Me._commandCollection(0).CommandType = Global.System.Data.CommandType.StoredProcedure + Me._commandCollection(0).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@RETURN_VALUE", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.ReturnValue, 10, 0, Nothing, Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) + Me._commandCollection(0).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Rok", Global.System.Data.SqlDbType.SmallInt, 2, Global.System.Data.ParameterDirection.Input, 5, 0, Nothing, Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) + Me._commandCollection(0).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Miesiac", Global.System.Data.SqlDbType.SmallInt, 2, Global.System.Data.ParameterDirection.Input, 5, 0, Nothing, Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", "")) + End Sub + + _ + Public Overloads Overridable Function Fill(ByVal dataTable As DsMain.Tbmy_ImpDM_KontaDataTable, ByVal Rok As Global.System.Nullable(Of Short), ByVal Miesiac As Global.System.Nullable(Of Short)) As Integer + Me.Adapter.SelectCommand = Me.CommandCollection(0) + If (Rok.HasValue = true) Then + Me.Adapter.SelectCommand.Parameters(1).Value = CType(Rok.Value,Short) + Else + Me.Adapter.SelectCommand.Parameters(1).Value = Global.System.DBNull.Value + End If + If (Miesiac.HasValue = true) Then + Me.Adapter.SelectCommand.Parameters(2).Value = CType(Miesiac.Value,Short) + Else + Me.Adapter.SelectCommand.Parameters(2).Value = Global.System.DBNull.Value + End If + If (Me.ClearBeforeFill = true) Then + dataTable.Clear + End If + Dim returnValue As Integer = Me.Adapter.Fill(dataTable) + Return returnValue + End Function + + _ + Public Overloads Overridable Function GetData(ByVal Rok As Global.System.Nullable(Of Short), ByVal Miesiac As Global.System.Nullable(Of Short)) As DsMain.Tbmy_ImpDM_KontaDataTable + Me.Adapter.SelectCommand = Me.CommandCollection(0) + If (Rok.HasValue = true) Then + Me.Adapter.SelectCommand.Parameters(1).Value = CType(Rok.Value,Short) + Else + Me.Adapter.SelectCommand.Parameters(1).Value = Global.System.DBNull.Value + End If + If (Miesiac.HasValue = true) Then + Me.Adapter.SelectCommand.Parameters(2).Value = CType(Miesiac.Value,Short) + Else + Me.Adapter.SelectCommand.Parameters(2).Value = Global.System.DBNull.Value + End If + Dim dataTable As DsMain.Tbmy_ImpDM_KontaDataTable = New DsMain.Tbmy_ImpDM_KontaDataTable() + Me.Adapter.Fill(dataTable) + Return dataTable + End Function + End Class + + ''' + '''TableAdapterManager is used to coordinate TableAdapters in the dataset to enable Hierarchical Update scenarios + ''' + _ + Partial Public Class TableAdapterManager + Inherits Global.System.ComponentModel.Component + + Private _updateOrder As UpdateOrderOption + + Private _backupDataSetBeforeUpdate As Boolean + + Private _connection As Global.System.Data.IDbConnection + + _ + Public Property UpdateOrder() As UpdateOrderOption + Get + Return Me._updateOrder + End Get + Set + Me._updateOrder = value + End Set + End Property + + _ + Public Property BackupDataSetBeforeUpdate() As Boolean + Get + Return Me._backupDataSetBeforeUpdate + End Get + Set + Me._backupDataSetBeforeUpdate = value + End Set + End Property + + _ + Public Property Connection() As Global.System.Data.IDbConnection + Get + If (Not (Me._connection) Is Nothing) Then + Return Me._connection + End If + Return Nothing + End Get + Set + Me._connection = value + End Set + End Property + + _ + Public ReadOnly Property TableAdapterInstanceCount() As Integer + Get + Dim count As Integer = 0 + Return count + End Get + End Property + + ''' + '''Update rows in top-down order. + ''' + _ + Private Function UpdateUpdatedRows(ByVal dataSet As DsMain, ByVal allChangedRows As Global.System.Collections.Generic.List(Of Global.System.Data.DataRow), ByVal allAddedRows As Global.System.Collections.Generic.List(Of Global.System.Data.DataRow)) As Integer + Dim result As Integer = 0 + Return result + End Function + + ''' + '''Insert rows in top-down order. + ''' + _ + Private Function UpdateInsertedRows(ByVal dataSet As DsMain, ByVal allAddedRows As Global.System.Collections.Generic.List(Of Global.System.Data.DataRow)) As Integer + Dim result As Integer = 0 + Return result + End Function + + ''' + '''Delete rows in bottom-up order. + ''' + _ + Private Function UpdateDeletedRows(ByVal dataSet As DsMain, ByVal allChangedRows As Global.System.Collections.Generic.List(Of Global.System.Data.DataRow)) As Integer + Dim result As Integer = 0 + Return result + End Function + + ''' + '''Remove inserted rows that become updated rows after calling TableAdapter.Update(inserted rows) first + ''' + _ + Private Function GetRealUpdatedRows(ByVal updatedRows() As Global.System.Data.DataRow, ByVal allAddedRows As Global.System.Collections.Generic.List(Of Global.System.Data.DataRow)) As Global.System.Data.DataRow() + If ((updatedRows Is Nothing) _ + OrElse (updatedRows.Length < 1)) Then + Return updatedRows + End If + If ((allAddedRows Is Nothing) _ + OrElse (allAddedRows.Count < 1)) Then + Return updatedRows + End If + Dim realUpdatedRows As Global.System.Collections.Generic.List(Of Global.System.Data.DataRow) = New Global.System.Collections.Generic.List(Of Global.System.Data.DataRow)() + Dim i As Integer = 0 + Do While (i < updatedRows.Length) + Dim row As Global.System.Data.DataRow = updatedRows(i) + If (allAddedRows.Contains(row) = false) Then + realUpdatedRows.Add(row) + End If + i = (i + 1) + Loop + Return realUpdatedRows.ToArray + End Function + + ''' + '''Update all changes to the dataset. + ''' + _ + Public Overridable Function UpdateAll(ByVal dataSet As DsMain) As Integer + If (dataSet Is Nothing) Then + Throw New Global.System.ArgumentNullException("dataSet") + End If + If (dataSet.HasChanges = false) Then + Return 0 + End If + Dim workConnection As Global.System.Data.IDbConnection = Me.Connection + If (workConnection Is Nothing) Then + Throw New Global.System.ApplicationException("Obiekt TableAdapterManager nie zawiera informacji o połączeniu. Ustaw dla każdej "& _ + "właściwości TableAdapter obiektu TableAdapterManager prawidłowe wystąpienie obie"& _ + "ktu TableAdapter.") + End If + Dim workConnOpened As Boolean = false + If ((workConnection.State And Global.System.Data.ConnectionState.Broken) _ + = Global.System.Data.ConnectionState.Broken) Then + workConnection.Close + End If + If (workConnection.State = Global.System.Data.ConnectionState.Closed) Then + workConnection.Open + workConnOpened = true + End If + Dim workTransaction As Global.System.Data.IDbTransaction = workConnection.BeginTransaction + If (workTransaction Is Nothing) Then + Throw New Global.System.ApplicationException("Nie można rozpocząć transakcji. Bieżące połączenie danych nie obsługuje transakcj"& _ + "i lub bieżący stan nie pozwala na rozpoczęcie transakcji.") + End If + Dim allChangedRows As Global.System.Collections.Generic.List(Of Global.System.Data.DataRow) = New Global.System.Collections.Generic.List(Of Global.System.Data.DataRow)() + Dim allAddedRows As Global.System.Collections.Generic.List(Of Global.System.Data.DataRow) = New Global.System.Collections.Generic.List(Of Global.System.Data.DataRow)() + Dim adaptersWithAcceptChangesDuringUpdate As Global.System.Collections.Generic.List(Of Global.System.Data.Common.DataAdapter) = New Global.System.Collections.Generic.List(Of Global.System.Data.Common.DataAdapter)() + Dim revertConnections As Global.System.Collections.Generic.Dictionary(Of Object, Global.System.Data.IDbConnection) = New Global.System.Collections.Generic.Dictionary(Of Object, Global.System.Data.IDbConnection)() + Dim result As Integer = 0 + Dim backupDataSet As Global.System.Data.DataSet = Nothing + If Me.BackupDataSetBeforeUpdate Then + backupDataSet = New Global.System.Data.DataSet() + backupDataSet.Merge(dataSet) + End If + Try + '---- Prepare for update ----------- + ' + ' + '---- Perform updates ----------- + ' + If (Me.UpdateOrder = UpdateOrderOption.UpdateInsertDelete) Then + result = (result + Me.UpdateUpdatedRows(dataSet, allChangedRows, allAddedRows)) + result = (result + Me.UpdateInsertedRows(dataSet, allAddedRows)) + Else + result = (result + Me.UpdateInsertedRows(dataSet, allAddedRows)) + result = (result + Me.UpdateUpdatedRows(dataSet, allChangedRows, allAddedRows)) + End If + result = (result + Me.UpdateDeletedRows(dataSet, allChangedRows)) + ' + '---- Commit updates ----------- + ' + workTransaction.Commit + If (0 < allAddedRows.Count) Then + Dim rows((allAddedRows.Count) - 1) As Global.System.Data.DataRow + allAddedRows.CopyTo(rows) + Dim i As Integer = 0 + Do While (i < rows.Length) + Dim row As Global.System.Data.DataRow = rows(i) + row.AcceptChanges + i = (i + 1) + Loop + End If + If (0 < allChangedRows.Count) Then + Dim rows((allChangedRows.Count) - 1) As Global.System.Data.DataRow + allChangedRows.CopyTo(rows) + Dim i As Integer = 0 + Do While (i < rows.Length) + Dim row As Global.System.Data.DataRow = rows(i) + row.AcceptChanges + i = (i + 1) + Loop + End If + Catch ex As Global.System.Exception + workTransaction.Rollback + '---- Restore the dataset ----------- + If Me.BackupDataSetBeforeUpdate Then + Global.System.Diagnostics.Debug.Assert((Not (backupDataSet) Is Nothing)) + dataSet.Clear + dataSet.Merge(backupDataSet) + Else + If (0 < allAddedRows.Count) Then + Dim rows((allAddedRows.Count) - 1) As Global.System.Data.DataRow + allAddedRows.CopyTo(rows) + Dim i As Integer = 0 + Do While (i < rows.Length) + Dim row As Global.System.Data.DataRow = rows(i) + row.AcceptChanges + row.SetAdded + i = (i + 1) + Loop + End If + End If + Throw ex + Finally + If workConnOpened Then + workConnection.Close + End If + If (0 < adaptersWithAcceptChangesDuringUpdate.Count) Then + Dim adapters((adaptersWithAcceptChangesDuringUpdate.Count) - 1) As Global.System.Data.Common.DataAdapter + adaptersWithAcceptChangesDuringUpdate.CopyTo(adapters) + Dim i As Integer = 0 + Do While (i < adapters.Length) + Dim adapter As Global.System.Data.Common.DataAdapter = adapters(i) + adapter.AcceptChangesDuringUpdate = true + i = (i + 1) + Loop + End If + End Try + Return result + End Function + + _ + Protected Overridable Sub SortSelfReferenceRows(ByVal rows() As Global.System.Data.DataRow, ByVal relation As Global.System.Data.DataRelation, ByVal childFirst As Boolean) + Global.System.Array.Sort(Of Global.System.Data.DataRow)(rows, New SelfReferenceComparer(relation, childFirst)) + End Sub + + _ + Protected Overridable Function MatchTableAdapterConnection(ByVal inputConnection As Global.System.Data.IDbConnection) As Boolean + If (Not (Me._connection) Is Nothing) Then + Return true + End If + If ((Me.Connection Is Nothing) _ + OrElse (inputConnection Is Nothing)) Then + Return true + End If + If String.Equals(Me.Connection.ConnectionString, inputConnection.ConnectionString, Global.System.StringComparison.Ordinal) Then + Return true + End If + Return false + End Function + + ''' + '''Update Order Option + ''' + _ + Public Enum UpdateOrderOption + + InsertUpdateDelete = 0 + + UpdateInsertDelete = 1 + End Enum + + ''' + '''Used to sort self-referenced table's rows + ''' + _ + Private Class SelfReferenceComparer + Inherits Object + Implements Global.System.Collections.Generic.IComparer(Of Global.System.Data.DataRow) + + Private _relation As Global.System.Data.DataRelation + + Private _childFirst As Integer + + _ + Friend Sub New(ByVal relation As Global.System.Data.DataRelation, ByVal childFirst As Boolean) + MyBase.New + Me._relation = relation + If childFirst Then + Me._childFirst = -1 + Else + Me._childFirst = 1 + End If + End Sub + + _ + Private Function GetRoot(ByVal row As Global.System.Data.DataRow, ByRef distance As Integer) As Global.System.Data.DataRow + Global.System.Diagnostics.Debug.Assert((Not (row) Is Nothing)) + Dim root As Global.System.Data.DataRow = row + distance = 0 + + Dim traversedRows As Global.System.Collections.Generic.IDictionary(Of Global.System.Data.DataRow, Global.System.Data.DataRow) = New Global.System.Collections.Generic.Dictionary(Of Global.System.Data.DataRow, Global.System.Data.DataRow)() + traversedRows(row) = row + + Dim parent As Global.System.Data.DataRow = row.GetParentRow(Me._relation, Global.System.Data.DataRowVersion.[Default]) + + Do While ((Not (parent) Is Nothing) _ + AndAlso (traversedRows.ContainsKey(parent) = false)) + distance = (distance + 1) + root = parent + traversedRows(parent) = parent + parent = parent.GetParentRow(Me._relation, Global.System.Data.DataRowVersion.[Default]) + + Loop + + If (distance = 0) Then + traversedRows.Clear + traversedRows(row) = row + parent = row.GetParentRow(Me._relation, Global.System.Data.DataRowVersion.Original) + + Do While ((Not (parent) Is Nothing) _ + AndAlso (traversedRows.ContainsKey(parent) = false)) + distance = (distance + 1) + root = parent + traversedRows(parent) = parent + parent = parent.GetParentRow(Me._relation, Global.System.Data.DataRowVersion.Original) + + Loop + End If + + Return root + End Function + + _ + Public Function Compare(ByVal row1 As Global.System.Data.DataRow, ByVal row2 As Global.System.Data.DataRow) As Integer Implements Global.System.Collections.Generic.IComparer(Of Global.System.Data.DataRow).Compare + If Object.ReferenceEquals(row1, row2) Then + Return 0 + End If + If (row1 Is Nothing) Then + Return -1 + End If + If (row2 Is Nothing) Then + Return 1 + End If + + Dim distance1 As Integer = 0 + Dim root1 As Global.System.Data.DataRow = Me.GetRoot(row1, distance1) + + Dim distance2 As Integer = 0 + Dim root2 As Global.System.Data.DataRow = Me.GetRoot(row2, distance2) + + If Object.ReferenceEquals(root1, root2) Then + Return (Me._childFirst * distance1.CompareTo(distance2)) + Else + Global.System.Diagnostics.Debug.Assert(((Not (root1.Table) Is Nothing) _ + AndAlso (Not (root2.Table) Is Nothing))) + If (root1.Table.Rows.IndexOf(root1) < root2.Table.Rows.IndexOf(root2)) Then + Return -1 + Else + Return 1 + End If + End If + End Function + End Class + End Class +End Namespace diff --git a/ImportDokMag/DsMain.vb b/ImportDokMag/DsMain.vb new file mode 100644 index 0000000..257f108 --- /dev/null +++ b/ImportDokMag/DsMain.vb @@ -0,0 +1,2 @@ +Partial Class DsMain +End Class diff --git a/ImportDokMag/DsMain.xsc b/ImportDokMag/DsMain.xsc new file mode 100644 index 0000000..05b0199 --- /dev/null +++ b/ImportDokMag/DsMain.xsc @@ -0,0 +1,9 @@ + + + + + \ No newline at end of file diff --git a/ImportDokMag/DsMain.xsd b/ImportDokMag/DsMain.xsd new file mode 100644 index 0000000..e27b87a --- /dev/null +++ b/ImportDokMag/DsMain.xsd @@ -0,0 +1,251 @@ + + + + + + + + + + + + + + + CDN.my_ImpDM_Src + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + CDN.my_ImpDM_Dekr + + + + + + + + + + + + + + + + + + + + + + + + + + + + + CDN.my_ImpDM_Konta + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ImportDokMag/DsMain.xss b/ImportDokMag/DsMain.xss new file mode 100644 index 0000000..34162a8 --- /dev/null +++ b/ImportDokMag/DsMain.xss @@ -0,0 +1,14 @@ + + + + + + + + + + \ No newline at end of file diff --git a/ImportDokMag/FunkcjeXL.vb b/ImportDokMag/FunkcjeXL.vb new file mode 100644 index 0000000..3c905b7 --- /dev/null +++ b/ImportDokMag/FunkcjeXL.vb @@ -0,0 +1,980 @@ +Public Module FunkcjeXL + Public Const API_VERSION = 20251 + + Public Zalogowany As Boolean + Public wynikXL As Integer + Public Wersja As Integer + Dim Ilosc_Bledow As Integer + Dim Sesja As Integer + Dim IDDokumentu As Integer + Public NotaID As Integer + Dim Flagi As Integer + Dim Komunikat As String + + + '------------------------------------------------------- + ' Funkcja XLLogin - W przypadku podania poprawnych parametrów poprzez strukturę XLLoginInfo _ + ' logowanie następuję automatycznie. W przeciwnym przypadku otwiera się okno _ + ' logowania do systemu CDN XL, w którym należy podać poprawne dane. _ + ' Poprzez parametr sesja zwracany jest numer przydzielonej dla programu sesji. _ + ' Numerem tym należy się posługiwać przy wywoływaniu następnych funkcji API. + + Public Function Zaloguj(ByVal Baza As String, ByVal CDNop As String, ByVal Haslo As String, ByVal SerwerKlucza As String) As Boolean + Dim LoginInfo As New cdn_api.XLLoginInfo_20251 + Dim sesja_temp As Int32 + + If Zalogowany And Sesja > 0 Then + wynikXL = 0 + Ilosc_Bledow = 0 + Zaloguj = Zalogowany + Exit Function + End If + Try + ' listuj(" Logowanie do ERP XL - proszę czekać...", 1) + Zalogowany = False + Ilosc_Bledow = 0 + ' AttachThread() + Wersja = API_VERSION + LoginInfo.Wersja = Wersja ' numer wersji API + LoginInfo.UtworzWlasnaSesje = 0 + LoginInfo.Winieta = -1 + LoginInfo.TrybWsadowy = 1 + LoginInfo.TrybNaprawy = 1 + LoginInfo.ProgramID = "Import dok. magazynowych z Jastrzębia" ' nazwa programu korzystającego z XL-API (pojawia się na liście sesji) + LoginInfo.Baza = Baza & Chr(0) ' nazwa bazy danych do której ma nastąpić login pobierana + ' z klucza HKEY_CURRENT_USER oraz HKEY_LOCAL_MACHINE (nazwa rejestracji w managerze baz an tym komputerze, nie rzeczywista nazwa bazy !!) + ' LoginInfo.OpeIdent = CDNop & Chr(0) ' identyfikator CDNOpera logującego się + ' LoginInfo.OpeHaslo = Haslo & Chr(0) ' hasło CDNOpera logującego się + LoginInfo.PlikLog = "" + LoginInfo.SerwerKlucza = SerwerKlucza + Sesja = 0 + sesja_temp = 0 + wynikXL = 0 + wynikXL = cdn_api.cdn_api.XLLogin(LoginInfo, sesja_temp) + Catch ex As Exception + wynikXL = -200 + Komunikat = "Nie rozpoznany błąd API XLLogin" + End Try + If wynikXL = 0 Then + Sesja = sesja_temp + Ilosc_Bledow = 0 + Zalogowany = True + Else + Komunikat = "Nieokreślony błąd logowania do XL = " & CStr(wynikXL) + Select Case wynikXL + Case -9 + Komunikat = "XLLogin: operator nie jest podpięty do żadnego centrum" + Case -8 + Komunikat = "XLLogin: Nie podano nazwy bazy danych" + Case -7 + Komunikat = "XLLogin: Baza niezarejestrowana w systemie" + Case -6 + Komunikat = "XLLogin: Nie podano hasła lub brak operatora" + Case -5 + Komunikat = "XLLogin: nieprawidłowe hasło" + Case -4 + Komunikat = "XLLogin: konto operatora zablokowane" + Case -3 + Komunikat = "XLLogin: nie podano nazwy programu (pole ProgramID)" + Case -2 + Komunikat = "XLLogin: błąd otwarcia pliku tekstowego, do którego mają być zapisywane komunikaty. Nie znaleziono ścieżki lub nazwa pliku jest nieprawidłowa." + Case -1 + Komunikat = "XLLogin: podano niepoprawną wersję API" + Case 1 + Komunikat = "XLLogin: inicjalizacja nie powiodła się" + Case 2 + Komunikat = "XLLogin: istnieje już jedna instancja programu i nastąpiło ponowne logowanie (z tego samego komputera i na tego samego operatora)" + Case 3 + Komunikat = "XLLogin: istnieje już jedna instancja programu i nastąpiło ponowne logowanie z innego komputera i na tego samego operatora, ale operatora nie posiada prawa do wielokrotnego logowania" + Case 5 + Komunikat = "XLLogin: występuje przy pracy terminalowej w przypadku, gdy operatora nie ma prawa do wielokrotnego logowania i na pytanie czy usunąć istniejące sesje terminalowe wybrano odpowiedź ‘Nie’" + Case 61 + Komunikat = "XLLogin: błąd zakładania nowej sesji" + End Select + MainFrm.listuj(Komunikat) + Zalogowany = False + Ilosc_Bledow = Ilosc_Bledow + 1 + End If + System.Threading.Thread.Sleep(200) + If Zalogowany Then MainFrm.listuj("Zalogowano") + Zaloguj = Zalogowany + End Function + + + '-------------------------------------------------------------------------------------------------- + 'Funkcja XLPolaczenie - podaje ConnectionStgring do bazy danych + ' Funkcja XLPolaczenie - Funkcja umozliwia identyfikację połączenia do bazy + ' zwraca nazwę serwera, bazy oraz connect string dla raportowania + '-------------------------------------------------------------------------------------------------- + Public Function Polaczenie() As String + Dim PolaczenieInfo As New cdn_api.XLPolaczenieInfo_20251 With + { + .Wersja = Wersja, ' numer wersji API (20251) ustawiony w funkcji Zaloguj() + .NTMode = 0, + .Serwer = "" + Chr(0), + .Baza = "" + Chr(0), + .ConnectString = "" + Chr(0) + } + wynikXL = 0 + wynikXL = cdn_api.cdn_api.XLPolaczenie(PolaczenieInfo) + If wynikXL >= 0 Then + Polaczenie = PolaczenieInfo.ConnectString + ' Serwer = PolaczenieInfo.Serwer + Else + Polaczenie = "" + Komunikat = "XLPolaczenie: nieaktywna sesja API lub nieprawidłowy numer wersji" + End If + End Function + + '-------------------------------------------------------------------------------------------------- + ' Funkcja XLLogout - Funkcja ta służy do zamykania sesji otwartej funkcją XLLogin. _ + ' Parametr sesja określa numer sesji, którą chcemy zamknąć _ + ' (numer przydzielany funkcją XLLogin). + '-------------------------------------------------------------------------------------------------- + Public Sub Wyloguj() + Dim LogoutInfo As New cdn_api.XLLogoutInfo_20251 + Dim wynik As Integer + + If Zalogowany Or Sesja > 0 Then + LogoutInfo.Wersja = Wersja + LogoutInfo.TrybUsuwaniaDok = 0 + If Sesja > 0 Then + Try + cdn_api.cdn_api.XLLogoutEx(LogoutInfo, Sesja) + Catch ex As Exception + wynik = -200 + Komunikat = "Nie rozpoznany błąd API XLLogout" + End Try + End If + Zalogowany = False + Sesja = 0 + End If + End Sub + + '-------------------------------------------------------------------------------------------------- + ' Funkcja XLNowyDokument - Jest to funkcja, która zapoczątkowuje wystawianie dokumentu. _ + ' Nadaje ona nowy numer nagłówka, pobiera kontrahenta, _ + ' wypełnia rekord standardowymi ustawieniami i ustawia go w stan zajętości. _ + ' Wymagane jest użycie w komplecie co najmniej funkcji XLZamknijDokument _ + ' w celu zakończenia dokumentu i zwolnienia jego zajętości (bez wywołania _ + ' tej funkcji wewnętrzna kontrola XL'a spowoduje wycofanie wszelkich zapisów _ + ' do tego dokumentu). + '-------------------------------------------------------------------------------------------------- + Public Sub UtworzNowyDok(DokNagInfo As cdn_api.XLDokumentNagInfo_20251) + Dim w, i As Integer + + wynikXL = 0 + For i = 1 To 200 + Try + wynikXL = cdn_api.cdn_api.XLNowyDokument(Sesja, IDDokumentu, DokNagInfo) + Catch ex As Exception + wynikXL = -200 + Komunikat = "Nie rozpoznany błąd API XLNowyDokument" + Exit For + End Try + If wynikXL <> 106 Then Exit For + System.Threading.Thread.Sleep(40) + Next + Flagi = DokNagInfo.Flagi + w = OpisBledu(1, wynikXL, Flagi) + End Sub + + '-------------------------------------------------------------------------------------------------- + ' Funkcja XLDodajPozycje - Funkcja ta jest odpowiedzialna za dodawanie do dokumentu elementów _ + ' oraz związanych z nim subelementów. + '-------------------------------------------------------------------------------------------------- + Public Sub DodajPozycjeDok(DokEleInfo As cdn_api.XLDokumentElemInfo_20251) + Dim w, i As Integer + + wynikXL = 0 + If IDDokumentu > 0 Then + For i = 1 To 200 + Try + wynikXL = cdn_api.cdn_api.XLDodajPozycje(IDDokumentu, DokEleInfo) + Catch ex As Exception + wynikXL = -200 + Komunikat = "Nie rozpoznany błąd API XLDodajPozycje" + Exit For + End Try + If wynikXL <> 106 Then Exit For + System.Threading.Thread.Sleep(40) + Next + End If + Flagi = DokEleInfo.Flagi + If wynikXL <> 17 Then w = OpisBledu(2, wynikXL, Flagi) 'bez drukowania kmunikatu, że zabrakło towaru + End Sub + + '-------------------------------------------------------------------------------------------------- + ' Funkcja XLZamknijDokument - Funkcja odpowiada za zakończenie pracy z dokumentem. + '-------------------------------------------------------------------------------------------------- + + Public Sub ZamknijDokument(ByVal Tryb As Integer, Magazynowe As Integer) + Dim ZamkniecieDokumentuInfo As New cdn_api.XLZamkniecieDokumentuInfo_20251 + Dim w, i As Integer + + Try + With ZamkniecieDokumentuInfo + .Wersja = Wersja + .Tryb = Tryb '-10, 0 - zatwierdz dokument, 1 - do bufora, -3 - zamknięcie otwartego dok., -1 - skasowanie dokumentu, -2 - anulowanie + .Magazynowe = Magazynowe 'generowanie dokumentów WM i MMP: 0-wg. konfig., 1-nie generuj, 2-gen. do bufora, 3-gen. zatwierdzone + 'dla MMW: 0x,1x,2x - WM (bez, bufor, zatw.); x1,x2,x3 - MMP (bez, bufor, zatw.) + End With + wynikXL = 0 + If IDDokumentu > 0 Then + For i = 1 To 200 + Try + wynikXL = cdn_api.cdn_api.XLZamknijDokument(IDDokumentu, ZamkniecieDokumentuInfo) + Catch ex As Exception + wynikXL = -200 + Komunikat = "Nie rozpoznany błąd API XLZamknijDokument" + Exit For + End Try + If wynikXL <> 106 Then Exit For + System.Threading.Thread.Sleep(40) + Next + End If + w = OpisBledu(7, wynikXL, 0) + Catch ex As Exception + wynikXL = -201 + Komunikat = "Błąd w dostępie do danych w API XLZamknijDokument" + End Try + End Sub + + '-------------------------------------------------------------------------------------------------- + ' Funkcja XLPodajKomunikat - Funkcja rozwiązuje podane numery bledów i ostrzeżeń na stringowy + ' komunikat, rodzaje trybów: 0-tryb cichy, 1-tylko bledy, 2-bledy i ostrzeżenia + '-------------------------------------------------------------------------------------------------- + + Public Function OpisBledu(ByVal Funkcja As Integer, ByVal wynik_lokalny As Integer, ByVal Flagi As Integer) As Integer + Dim KomunikatInfo As New cdn_api.XLKomunikatInfo_20251 + Dim Komunikat As String + + OpisBledu = 0 + If wynik_lokalny < -199 Then + MainFrm.listuj("Nie rozpoznany błąd API w funkcji " + CStr(Funkcja)) + Ilosc_Bledow = Ilosc_Bledow + 1 + OpisBledu = Ilosc_Bledow + ElseIf wynik_lokalny <> 0 And Funkcja < 900 Then + KomunikatInfo.Wersja = Wersja + KomunikatInfo.Funkcja = Funkcja + KomunikatInfo.Blad = wynik_lokalny + KomunikatInfo.Ostrzezenie = Flagi + KomunikatInfo.Tryb = 0 + Try + cdn_api.cdn_api.XLOpisBledu(KomunikatInfo) + Catch ex As Exception + wynik_lokalny = -200 + Komunikat = "Nie rozpoznany błąd API XLOpisBledu" + End Try + Komunikat = "!------! UWAGA: " + KomunikatInfo.OpisBledu + MainFrm.listuj(Komunikat) + Ilosc_Bledow = Ilosc_Bledow + 1 + OpisBledu = Ilosc_Bledow + ElseIf wynik_lokalny <> 0 And Funkcja = 999 Then + Komunikat = "XLOpisBledu: Nieokreślony błąd API XL" + Select Case wynik_lokalny + Case 2 + Komunikat = "XLOpisBledu: UWAGA: ustalono wybór z listy, a brak ustawienia trybu selekcji" + Case 3 + Komunikat = "XLOpisBledu: UWAGA: błąd otwarcia tabeli" + Case 4 + Komunikat = "XLOpisBledu: UWAGA: nie znaleziono rekordu o podanym GIDzie" + Case 5 + Komunikat = "XLOpisBledu: UWAGA: ustalono wybór elementu z listy a brak procedury listy dla takiego typu dokumentu" + Case 6 + Komunikat = "XLOpisBledu: UWAGA: ustalono wybór grupy z listy, a brak procedury listy dla takiego typu dokumentu" + Case 7 + Komunikat = "XLOpisBledu: UWAGA: ustalono podgląd elementów listy, a brak procedury listy dla takiego typu dokumentu" + Case 8 + Komunikat = "XLOpisBledu: UWAGA: nieobsługiwany GIDTyp" + Case Else + Komunikat = "XLOpisBledu: UWAGA: Nieznany błąd" + End Select + MainFrm.listuj(Komunikat) + Ilosc_Bledow = Ilosc_Bledow + 1 + OpisBledu = Ilosc_Bledow + ElseIf wynik_lokalny <> 0 And Funkcja = 998 Then 'Generuj EAN + Komunikat = "Nieokreślony błąd API XL" + Select Case wynik_lokalny + Case -1 + Komunikat = "UWAGA: API nie zostało aktywowane bądź błąd wersji" + Case 1 + Komunikat = "UWAGA: Niepoprawny zakres" + Case 2 + Komunikat = "UWAGA: Wystąpił niezidentyfikowany błąd, kod EAN nie został wygenerowany" + Case Else + Komunikat = "UWAGA: Nieznany błąd" + End Select + MainFrm.listuj(Komunikat) + Ilosc_Bledow = Ilosc_Bledow + 1 + OpisBledu = Ilosc_Bledow + ElseIf wynik_lokalny <> 0 And Funkcja = 997 Then 'DodajAtrybut do obiektu + Komunikat = "Nieokreślony błąd API XL" + Select Case wynik_lokalny + Case -1 + Komunikat = "UWAGA: brak sesji" + Case 2 + Komunikat = "UWAGA: błąd przy zakładaniu logout" + Case 3 + Komunikat = "UWAGA: nie znaleziono obiektu" + Case 4 + Komunikat = "UWAGA: nie znalezniono klasy atrybutu" + Case 5 + Komunikat = "UWAGA: klasa nieprzypisana do definicji obiektu" + Case 6 + Komunikat = "UWAGA: atrybut juz istnieje w kolejce" + Case 7 + Komunikat = "UWAGA: błąd ADO Connection" + Case 8 + Komunikat = "UWAGA: błąd ADO" + Case 9 + Komunikat = "UWAGA: brak zdefiniowanego obiektu" + Case Else + Komunikat = "UWAGA: Nieznany błąd" + End Select + MainFrm.listuj(Komunikat) + Ilosc_Bledow = Ilosc_Bledow + 1 + OpisBledu = Ilosc_Bledow + ElseIf wynik_lokalny <> 0 And Funkcja = 996 Then 'Dodaj Partię + Komunikat = "Nieokreślony błąd API XL" + Select Case wynik_lokalny + Case -1 + Komunikat = "UWAGA: API nie zostało aktywowane bądź błąd wersji" + Case 2 + Komunikat = "UWAGA: Wystąpił błąd przy próbie zablokowania tabel dla wykonania transakcji" + Case 11 + Komunikat = "UWAGA: nie znaleziono towaru" + Case 12 + Komunikat = "UWAGA: Nie podano towaru" + Case 106 + Komunikat = "UWAGA: Wystąpił błąd DeadLock" + Case 160 + Komunikat = "UWAGA: Nie znaleziono podanej dostawy" + Case 178 + Komunikat = "UWAGA: Partia o takich parametrach nie istnieje" + Case 210 + Komunikat = "UWAGA: Nie znaleziono podanego identyfikatora partii" + Case Else + Komunikat = "UWAGA: Nieznany błąd" + End Select + MainFrm.listuj(Komunikat) + Ilosc_Bledow = Ilosc_Bledow + 1 + OpisBledu = Ilosc_Bledow + ElseIf wynik_lokalny <> 0 And Funkcja = 995 Then 'Dokumenty związane + Komunikat = "Nieokreślony błąd API XL" + Select Case wynik_lokalny + Case -1 + Komunikat = "UWAGA: API nie zostało aktywowane bądź błąd wersji" + Case 1 + Komunikat = "UWAGA: taki dokument jest już na liście (błąd zwracany przy akcji dodawania)" + Case 30 + Komunikat = "UWAGA: nie znaleziono dokumentu na liście" + Case Else + Komunikat = "UWAGA: Nieznany błąd" + End Select + MainFrm.listuj(Komunikat) + Ilosc_Bledow = Ilosc_Bledow + 1 + OpisBledu = Ilosc_Bledow + ElseIf wynik_lokalny <> 0 And Funkcja = 994 Then 'Dodaj Dekret zbiorczy + Komunikat = "Nieokreślony błąd API XL" + Select Case wynik_lokalny + Case -1 + Komunikat = "BŁĄD: API nie zostało aktywowane bądź błąd wersji" + Case 101 + Komunikat = "BŁĄD: Niepoprawny dziennik księgowań" + Case 102 + Komunikat = "BŁĄD: Niepoprawny bufor księgowań" + Case 103 + Komunikat = "BŁĄD: Kwota = 0" + Case 104 + Komunikat = "BŁĄD: Brak opisu" + Case 105 + Komunikat = "BŁĄD: Dodawanie dekretu składowego bez otwarcia dekretu zbiorczego" + Case 1002 + Komunikat = "BŁĄD: Otwarty poprzedni dekret lub zamknięty modyfikowany dekret" + Case 1031 + Komunikat = "BŁĄD: Uruchomienie tej operacji nie jest możliwe ze względu na brak dostępu do modułu, problem z połączeniem lub niezgodność danych w kluczu ze stanem faktycznym." + Case 8001 + Komunikat = "BŁĄD: Niepoprawne konto księgowań" + Case 8005 + Komunikat = "BŁĄD: Bieżący okres obrachunkowy jest zamknięty do x. + Próbujesz księgować lub kasować księgowanie z datą y." + Case 8006 + Komunikat = "BŁĄD: Data nie mieści się w żadnym z zadeklarowanych okresów obrachunkowych. Załóż okres i powtórz operację" + Case 8008 + Komunikat = "BŁĄD: Zła data . Załóż nowy dekret księgowy. Błąd ten wyświetla się zawsze kiedy data nie mieści się w okresie obrachunkowym" + Case 8046 + Komunikat = "BŁĄD: Nie można księgować na to samo konto" + Case 8190 + Komunikat = "BŁĄD: Dokonywanie zapisu księgowego bez podania żadnego z kont" + Case Else + Komunikat = "UWAGA: Nieznany błąd" + End Select + MainFrm.listuj(Komunikat) + Ilosc_Bledow = Ilosc_Bledow + 1 + OpisBledu = Ilosc_Bledow + ElseIf wynik_lokalny <> 0 And Funkcja = 993 Then 'Dodaj dekret składowy + Komunikat = "Nieokreślony błąd API XL" + Select Case wynik_lokalny + Case -1 + Komunikat = "BŁĄD: API nie zostało aktywowane bądź błąd wersji" + Case 101 + Komunikat = "BŁĄD: Niepoprawny dziennik księgowań" + Case 102 + Komunikat = "BŁĄD: Niepoprawny bufor księgowań" + Case 103 + Komunikat = "BŁĄD: Kwota = 0" + Case 104 + Komunikat = "BŁĄD: Brak opisu" + Case 105 + Komunikat = "BŁĄD: Dodawanie dekretu składowego bez otwarcia dekretu zbiorczego" + Case 1002 + Komunikat = "BŁĄD: Otwarty poprzedni dekret lub zamknięty modyfikowany dekret" + Case 8001 + Komunikat = "BŁĄD: Niepoprawne konto księgowań" + Case 8003 + Komunikat = "BŁĄD: Konto posiada analitykę" + Case 8006 + Komunikat = "BŁĄD: Data nie mieści się w żadnym z zadeklarowanych okresów obrachunkowych. Załóż okres i powtórz operację" + Case 8008 + Komunikat = "BŁĄD: Zła data . Załóż nowy dekret księgowy. Błąd ten wyświetla się zawsze kiedy data nie mieści się w okresie obrachunkowym" + Case 8046 + Komunikat = "BŁĄD: Nie można księgować na to samo konto" + Case 8190 + Komunikat = "BŁĄD: Dokonywanie zapisu księgowego bez podania żadnego z kont" + Case Else + Komunikat = "UWAGA: Nieznany błąd" + End Select + MainFrm.listuj(Komunikat) + Ilosc_Bledow = Ilosc_Bledow + 1 + OpisBledu = Ilosc_Bledow + ElseIf wynik_lokalny <> 0 And Funkcja = 992 Then 'Zamknij dekret zbiorczy, sumuj dekret zbiorczy + Komunikat = "Nieokreślony błąd API XL" + Select Case wynik_lokalny + Case -1 + Komunikat = "BŁĄD: API nie zostało aktywowane bądź błąd wersji" + Case 101 + Komunikat = "BŁĄD: Niepoprawny dziennik księgowań" + Case 102 + Komunikat = "BŁĄD: Niepoprawny bufor księgowań" + Case 103 + Komunikat = "BŁĄD: Kwota = 0" + Case 104 + Komunikat = "BŁĄD: Brak opisu" + Case 105 + Komunikat = "BŁĄD: Dodawanie dekretu składowego bez otwarcia dekretu zbiorczego" + Case 8001 + Komunikat = "BŁĄD: Niepoprawne konto księgowań" + Case 8006 + Komunikat = "BŁĄD: Data nie mieści się w żadnym z zadeklarowanych okresów obrachunkowych. Załóż okres i powtórz operację" + Case 8008 + Komunikat = "BŁĄD: Zła data . Załóż nowy dekret księgowy. Błąd ten wyświetla się zawsze kiedy data nie mieści się w okresie obrachunkowym" + Case 8046 + Komunikat = "BŁĄD: Nie można księgować na to samo konto" + Case 8190 + Komunikat = "BŁĄD: Dokonywanie zapisu księgowego bez podania żadnego z kont" + Case Else + Komunikat = "UWAGA: Nieznany błąd" + End Select + MainFrm.listuj(Komunikat) + Ilosc_Bledow = Ilosc_Bledow + 1 + OpisBledu = Ilosc_Bledow + ElseIf wynik_lokalny <> 0 And Funkcja = 990 Then 'Dodaj dekret pojedynczy + Komunikat = "Nieokreślony błąd API XL" + Select Case wynik_lokalny + Case -1 + Komunikat = "BŁĄD: API nie zostało aktywowane bądź błąd wersji" + Case 101 + Komunikat = "BŁĄD: Niepoprawny dziennik księgowań" + Case 102 + Komunikat = "BŁĄD: Niepoprawny bufor księgowań" + Case 103 + Komunikat = "BŁĄD: Kwota = 0" + Case 104 + Komunikat = "BŁĄD: Brak opisu" + Case 105 + Komunikat = "BŁĄD: Dodawanie dekretu składowego bez otwarcia dekretu zbiorczego" + Case 1002 + Komunikat = "BŁĄD: Otwarty poprzedni dekret lub zamknięty modyfikowany dekret" + Case 8001 + Komunikat = "BŁĄD: Niepoprawne konto księgowań" + Case 8003 + Komunikat = "BŁĄD: Konto posiada analitykę" + Case 8006 + Komunikat = "BŁĄD: Data nie mieści się w żadnym z zadeklarowanych okresów obrachunkowych. Załóż okres i powtórz operację" + Case 8008 + Komunikat = "BŁĄD: Zła data . Załóż nowy dekret księgowy. Błąd ten wyświetla się zawsze kiedy data nie mieści się w okresie obrachunkowym" + Case 8046 + Komunikat = "BŁĄD: Nie można księgować na to samo konto" + Case 8190 + Komunikat = "BŁĄD: Dokonywanie zapisu księgowego bez podania żadnego z kont" + Case Else + Komunikat = "BŁĄD: Nieznany błąd" + End Select + MainFrm.listuj(Komunikat) + Ilosc_Bledow = Ilosc_Bledow + 1 + OpisBledu = Ilosc_Bledow + ElseIf wynik_lokalny <> 0 And Funkcja = 989 Then 'Dodaj uproszczoną notę memoriałową + Komunikat = "Nieokreślony błąd API XL" + Select Case wynik_lokalny + Case -3 + Komunikat = "BŁĄD: brak GIDTypu noty" + Case -2 + Komunikat = "BŁĄD: błąd zakładania transakcji" + Case -1 + Komunikat = "BŁĄD: niewłaściwy parametr SesjaID" + Case 1 + Komunikat = "BŁĄD: błąd dodawania/aktualizacji/kasowania nagłówka;" + Case 2 + Komunikat = "BŁĄD: błędny numer noty (XLNotaInfo.Numer już istnieje w ramach serii/miesiąca);" + Case 3 + Komunikat = "BŁĄD: brak definicji noty" + Case 4 + Komunikat = "BŁĄD: brak podmiotu (kontrahenta lub pracownika);" + Case 5 + Komunikat = "BŁĄD: Nie znaleziono podanej waluty" + Case 6 + Komunikat = "BŁĄD: brak płatnika" + Case 7 + Komunikat = "BŁĄD: nota nie posiada treści" + Case 8 + Komunikat = "BŁĄD: brak praw do używania tego modułu" + Case 9 + Komunikat = "BŁĄD: seria nie istnieje w systemie" + Case 8001 + Komunikat = "BŁĄD: Niepoprawne konto księgowań lub konto nie znajduje się w bieżącym okresie" + Case 8046 + Komunikat = "BŁĄD: Nie można księgować na to samo konto lub oba konta puste" + Case 8047 + Komunikat = "BŁĄD: po obu stronach pozycji noty konta rozrachunkowe" + Case Else + Komunikat = "BŁĄD: Nieznany błąd" + End Select + MainFrm.listuj(Komunikat) + Ilosc_Bledow = Ilosc_Bledow + 1 + OpisBledu = Ilosc_Bledow + ElseIf wynik_lokalny <> 0 And Funkcja = 988 Then 'Dodaj pozycję noty + Komunikat = "Nieokreślony błąd API XL" + Select Case wynik_lokalny + Case -2 + Komunikat = "BŁĄD: błąd zakładania transakcji" + Case -1 + Komunikat = "BŁĄD: niewłaściwy parametr SesjaID" + Case 3 + Komunikat = "BŁĄD: brak definicji noty" + Case 5 + Komunikat = "BŁĄD: brak noty o podanym ID" + Case 7 + Komunikat = "BŁĄD: pozycja noty nie posiada opisu" + Case 8 + Komunikat = "BŁĄD: brak symbolu kwoty" + Case 9 + Komunikat = "BŁĄD: błąd dodawania pozycji noty" + Case 10 + Komunikat = "BŁĄD: błąd synchronizacji konta walutowego" + Case 8001 + Komunikat = "BŁĄD: Niepoprawne konto księgowań lub konto nie znajduje się w bieżącym okresie" + Case 8046 + Komunikat = "BŁĄD: Nie można księgować na to samo konto lub oba konta puste" + Case 8047 + Komunikat = "BŁĄD: z uwagi na płatności, wygenerowanie noty nie jest możliwe. W ramach zapisu wprowadzono dekrety dwustronne, zawierające po obydwu stronach konta rozrachunkowe" + Case Else + Komunikat = "BŁĄD: Nieznany błąd" + End Select + MainFrm.listuj(Komunikat) + Ilosc_Bledow = Ilosc_Bledow + 1 + OpisBledu = Ilosc_Bledow + ElseIf wynik_lokalny <> 0 And Funkcja = 987 Then 'Zamknij notę + Komunikat = "Nieokreślony błąd API XL" + Select Case wynik_lokalny + Case -2 + Komunikat = "BŁĄD: błąd zakładania transakcji" + Case -1 + Komunikat = "BŁĄD: niewłaściwy parametr SesjaID" + Case 1 + Komunikat = "BŁĄD: błąd dodawania/aktualizacji/kasowania nagłówka" + Case 2 + Komunikat = "BŁĄD: błędny numer noty (XLNotaInfo.Numer już istnieje w ramach serii/miesiąca);" + Case 3 + Komunikat = "BŁĄD: brak definicji noty" + Case 5 + Komunikat = "BŁĄD: brak noty o podanym ID" + Case 6 + Komunikat = "BŁĄD: nota niezgodna z definicją (przychodowa/rozchodowa, podmiot);" + Case 7 + Komunikat = "BŁĄD: nie udało się wygenerowanie płatności;" + Case Else + Komunikat = "BŁĄD: Nieznany błąd" + End Select + MainFrm.listuj(Komunikat) + Ilosc_Bledow = Ilosc_Bledow + 1 + OpisBledu = Ilosc_Bledow + ElseIf wynik_lokalny <> 0 And Funkcja = 986 Then 'kasuj notę + Komunikat = "Nieokreślony błąd API XL" + Select Case wynik_lokalny + Case -2 + Komunikat = "BŁĄD: błąd zakładania transakcji" + Case -1 + Komunikat = "BŁĄD: niewłaściwy parametr SesjaID" + Case 1 + Komunikat = "BŁĄD: błąd dodawania/aktualizacji/kasowania nagłówka" + Case 5 + Komunikat = "BŁĄD: brak noty o podanym ID" + Case Else + Komunikat = "BŁĄD: Nieznany błąd" + End Select + MainFrm.listuj(Komunikat) + Ilosc_Bledow = Ilosc_Bledow + 1 + OpisBledu = Ilosc_Bledow + End If + End Function + + + '-------------------------------------------------------------------------------------------------- + ' Funkcja XLPobierzNumerDokumentu rozwiązuje GID na sformatowany numer dokumentu + '-------------------------------------------------------------------------------------------------- + + Public Function NumerDokumentu(ByVal GIDTyp As Integer, ByVal GIDFirma As Integer, ByVal GIDNumer As Integer, ByVal GIDLp As Integer) As String + Dim NumerDokumentuInfo As New cdn_api.XLNumerDokumentuInfo_20251 + Dim nrd As String + + NumerDokumentuInfo.Wersja = Wersja + NumerDokumentuInfo.GIDTyp = GIDTyp + NumerDokumentuInfo.GIDFirma = GIDFirma + NumerDokumentuInfo.GIDNumer = GIDNumer + NumerDokumentuInfo.GIDLp = GIDLp + + Try + wynikXL = cdn_api.cdn_api.XLPobierzNumerDokumentu(NumerDokumentuInfo) + Catch ex As Exception + wynikXL = -200 + Komunikat = "Nie rozpoznany błąd API XLPobierzNumerDokumentu" + End Try + NumerDokumentu = "" + nrd = "" + If wynikXL = 0 Then + nrd = NumerDokumentuInfo.NumerDokumentu + Else + If wynikXL = -1 Then + Komunikat = "XLPobierzNumerDokumentu: nieaktywna sesja API lub nieprawidłowy numer wersji" + ElseIf wynikXL = 1 Then + Komunikat = "XLPobierzNumerDokumentu: nie znaleziono dokumentu" + ElseIf wynikXL = 2 Then + Komunikat = "XLPobierzNumerDokumentu: podano nieobsługiwany GIDTyp" + End If + MainFrm.listuj(Komunikat) + End If + NumerDokumentu = RTrim(nrd) + End Function + + '-------------------------------------------------------------------------------------------------- + + Public Function XLSprawdzLicencje() As Boolean + Dim LicencjaInfo As New cdn_api.XLLicencjaInfo_20251 With + { + .Wersja = Wersja, + .Licencja = 1, + .Odswiez = 1, + .Stan = 0 + } + + wynikXL = 0 + XLSprawdzLicencje = False + Try + wynikXL = cdn_api.cdn_api.XLSprawdzLicencje(LicencjaInfo) + Catch ex As Exception + wynikXL = -200 + Komunikat = "Nie rozpoznany błąd API XLSprawdzLicencje" + End Try + If LicencjaInfo.Stan = 1 Then + XLSprawdzLicencje = True + Else + Komunikat = "Błąd API XLSprawdzLicencje = " & CStr(wynikXL) + If wynikXL = 0 Then + Select Case LicencjaInfo.Stan + Case 0 + Komunikat = "XLSprawdzLicencje: nie pobrano licencji" + Case 2 + Komunikat = "XLSprawdzLicencje: nie pobrano licencji - błąd pobrania licencji bądź ilość licencji wyczerpana" + Case 3 + Komunikat = "XLSprawdzLicencje: licencja przeterminowana" + Case 4 + Komunikat = "XLSprawdzLicencje: licencja promocyjna" + End Select + ElseIf wynikXL = -1 Then + Komunikat = "XLSprawdzLicencje: Sesja API nieaktywna lub nieprawidłowy numer" + ElseIf wynikXL = 1 Then + Komunikat = "XLSprawdzLicencje: błąd klucza sprzętowego" + End If + MainFrm.listuj(Komunikat) + End If + End Function + + + '------------------------------------------------------------------------------------- + ' Funkcja XLDodajDekretPojedynczy - Funkcja dodaje jeden dekret pojedynczy - bez nagłówka + + Sub XLDodajDekretPoj() + Dim DekretInfo As New cdn_api.XLDekretInfo_20251 + Dim w As Integer + + With DekretInfo + .Wersja = Wersja + '.Tryb = Range("b6").Value 'Tryb wystawienia (interakcyjny/wsadowy) + '.GIDTyp = Range("b7").Value 'GID dekretu (zwracanego po dodaniu) + '.GIDFirma = Range("b8").Value ' + '.GIDNumer = Range("b9").Value ' + '.GIDLp = Range("b10").Value ' + '.Data = Range("b11").Value 'Data dekretu + '.DataDokumentu = Range("b12").Value 'Data dokumentu + '.Kwota = Str(Range("b13").Value) 'Kwota pomnożona przez 100 + '.KwotaWalDT = Str(Range("b14").Value) 'Kwota winien w walucie pomnożona przez 100 + '.KwotaWalCT = Str(Range("b15").Value) 'Kwota ma w walucie pomnożona przez 100 + '.NumerDokumentu = Range("b16").Value + Chr(0) 'Numer dokumentu + '.Dziennik = Range("b17").Value + Chr(0) 'Dziennik księgowań + '.Bufor = Range("b18").Value + Chr(0) 'Bufor księgowań (pusty = KG) + '.KontoDebet = Range("b19").Value + Chr(0) 'Numer konta winien (WN) + '.KontoCredit = Range("b20").Value + Chr(0) 'Numer konta ma (MA) + '.KontoWalDT = Range("b21").Value + Chr(0) + '.KontoWalCT = Range("b22").Value + Chr(0) + '.Identyfikator = Range("b23").Value + '.Opis = Range("b24").Value + Chr(0) 'Opis dekretu + End With + wynikXL = 0 + Try + wynikXL = cdn_api.cdn_api.XLDodajDekretPojedynczy(Sesja, DekretInfo) + Catch ex As Exception + wynikXL = -200 + Komunikat = "Nie rozpoznany błąd API XLDodajDekretPojedynczy" + End Try + w = OpisBledu(990, wynikXL, 0) + End Sub + + + '------------------------------------------------------------------------------------- + ' Funkcja XLDodajDekretZbiorczy - Funkcja dodaje nagłówek dekretu zbiorczego + + Sub XLDodajDekretZb(DekretZbiorczyInfo As cdn_api.XLDekretZbiorczyInfo_20251) + Dim w As Integer + + With DekretZbiorczyInfo + .Wersja = Wersja + .Tryb = 2 'Tryb wystawienia wsadowy + End With + + wynikXL = 0 + Try + wynikXL = cdn_api.cdn_api.XLDodajDekretZbiorczy(Sesja, DekretZbiorczyInfo) + Catch ex As Exception + wynikXL = -200 + Komunikat = "Nie rozpoznany błąd API XLDodajDekretZbiorczy" + End Try + w = OpisBledu(994, wynikXL, 0) + End Sub + + + '------------------------------------------------------------------------------------- + ' Funkcja XLDodajDekretSkladowy - Funkcja dodaje jeden dekret składowy w otwartym dekrecie zbiorczym + + Sub XLDodajDekretSkl(DekretSkladowyInfo As cdn_api.XLDekretInfo_20251) + Dim w As Integer + + With DekretSkladowyInfo + .Wersja = Wersja + .Tryb = 2 'Tryb wystawienia wsadowy + End With + + wynikXL = 0 + Try + wynikXL = cdn_api.cdn_api.XLDodajDekretSkladowy(Sesja, DekretSkladowyInfo) + Catch ex As Exception + wynikXL = -200 + Komunikat = "Nie rozpoznany błąd API XLDodajDekretSkładowy" + End Try + w = OpisBledu(993, wynikXL, 0) + End Sub + + + '------------------------------------------------------------------------------------- + ' Funkcja XLZamknijDekretZbiorczy - Funkcja zamyka dekret zbiorczy + + Sub XLZamknijDekretZb(ZamknijDekretZbiorczyInfo As cdn_api.XLDekretZbiorczyInfo_20251) + Dim w As Integer + + With ZamknijDekretZbiorczyInfo + .Wersja = Wersja + .Tryb = 2 'Tryb wystawienia wsadowy + End With + + wynikXL = 0 + Try + wynikXL = cdn_api.cdn_api.XLZamknijDekretZbiorczy(Sesja, ZamknijDekretZbiorczyInfo) + Catch ex As Exception + wynikXL = -200 + Komunikat = "Nie rozpoznany błąd API XLZamknijDekretZbiorczy" + End Try + w = OpisBledu(992, wynikXL, 0) + End Sub + + '------------------------------------------------------------------------------------- + ' Funkcja XLSumujDekret - Funkcja podaje sumę dekretu zbiorczego + + Sub XLSumujDekretZb(SumujDekretZbiorczyInfo As cdn_api.XLDekretZbiorczyInfo_20251) + Dim w As Integer + + With SumujDekretZbiorczyInfo + .Wersja = Wersja + .Tryb = 2 'Tryb wystawienia (interakcyjny/wsadowy) + '.GIDTyp = Range("n7").Value 'GID dekretu (zwracanego po dodaniu) + '.GIDFirma = Range("n8").Value ' + '.GIDNumer = Range("n9").Value ' + '.GIDLp = Range("n10").Value ' + '.Data = Range("n11").Value 'Data dekretu + '.DataDokumentu = Range("n12").Value 'Data dokumentu + '.KwotaDebet = Str(Range("n13").Value) + Chr(0) 'Kwota sumaryczna winien pomnożona przez 100 + '.KwotaCredit = Str(Range("n14").Value) + Chr(0) 'Kwota sumaryczna ma pomnożona przez 100 + '.NumerDokumentu = Range("n15").Value + Chr(0) 'Numer dokumentu + '.Dziennik = Range("n16").Value + Chr(0) 'Dziennik księgowań + '.Bufor = Range("n17").Value + Chr(0) 'Bufor księgowań (pusty = KG) + '.Identyfikator = Range("n18").Value + '.Opis = Range("n19").Value + Chr(0) 'Opis dekretu + End With + + wynikXL = 0 + Try + wynikXL = cdn_api.cdn_api.XLSumujDekretZbiorczy(Sesja, SumujDekretZbiorczyInfo) + Catch ex As Exception + wynikXL = -200 + Komunikat = "Nie rozpoznany błąd API XLSumujDekretZbiorczy" + End Try + w = OpisBledu(992, wynikXL, 0) + End Sub + + '------------------------------------------------------------------------------------- + ' Funkcja XLKasujDekret - Funkcja kasuje dekret + + Sub XLKasujDekretzb(KasujDekretInfo As cdn_api.XLDekretInfo_20251) + Dim w As Integer + + With KasujDekretInfo + .Wersja = Wersja + .Tryb = 2 'Tryb wystawienia (interakcyjny/wsadowy) + End With + + wynikXL = 0 + Try + wynikXL = cdn_api.cdn_api.XLKasujDekret(Sesja, KasujDekretInfo) + Catch ex As Exception + wynikXL = -200 + Komunikat = "Nie rozpoznany błąd API XLKasujDekret" + End Try + w = OpisBledu(992, wynikXL, 0) + End Sub + + '-------------------------------------------------------------------------------------------------- + ' Funkcja XLDodajNote + + Sub XLDodajNoteMem(NotaInfo As cdn_api.XLNotaInfo_20251) + Dim w, IDNoty As Integer + + NotaID = 0 + With NotaInfo + .Wersja = Wersja + .Tryb = 2 + .GIDTyp = 4145 'nota uproszczona + '.DataWprow = Range("b24").Value + '.DataDok = Range("b25").Value + '.DataOper = Range("b26").Value + '.Seria = Range("b32").Value + Chr(0) + '.NumerDokumentu = Range("b33").Value + Chr(0) + '.Tresc = Range("b34").Value + Chr(0) + End With + + wynikXL = 0 + Try + wynikXL = cdn_api.cdn_api.XLDodajNote(Sesja, IDNoty, NotaInfo) + NotaID = IDNoty + Catch ex As Exception + wynikXL = -200 + NotaID = 0 + Komunikat = "Nie rozpoznany błąd API XLDodajNote" + End Try + w = OpisBledu(989, wynikXL, 0) + End Sub + + '-------------------------------------------------------------------------------------------------- + ' Funkcja XLDodajPozycjeNoty - Funkcja ta dodaje element do otwartej wcześniej noty + + Sub XLDodajPozycjeNotyMem(PozycjaNotyInfo As cdn_api.XLPozycjaNotyInfo_20251) + Dim w As Integer + + With PozycjaNotyInfo + .Wersja = Wersja + .Tryb = 2 + '.KKSNumerDT = Range("e15").Value + '.KKSNumerCT = Range("e16").Value + '.DataDok = Range("e21").Value + '.DataOper = Range("e22").Value + '.Kwota = Str(Range("e23").Value) + Chr(0) + '.Opis = Range("e24").Value + Chr(0) + '.NumerDokumentu = Range("e29").Value + End With + wynikXL = 0 + Try + wynikXL = cdn_api.cdn_api.XLDodajPozycjeNoty(Sesja, NotaID, PozycjaNotyInfo) + Catch ex As Exception + wynikXL = -200 + Komunikat = "Nie rozpoznany błąd API XLDodajPozycjeNoty" + End Try + w = OpisBledu(988, wynikXL, 0) + End Sub + '-------------------------------------------------------------------------------------------------- + ' Funkcja XLZamknijNote - Funkcja ta zamyka otwartą notę memoriałową + + Sub XLZamknijNoteMem(NotaInfo As cdn_api.XLNotaInfo_20251) + Dim w As Integer + + With NotaInfo + .Wersja = Wersja + .Tryb = 2 + End With + + wynikXL = 0 + Try + wynikXL = cdn_api.cdn_api.XLZamknijNote(Sesja, NotaID, NotaInfo) + NotaID = 0 + Catch ex As Exception + wynikXL = -200 + Komunikat = "Nie rozpoznany błąd API XLZamknijNote" + End Try + w = OpisBledu(987, wynikXL, 0) + End Sub + + + '-------------------------------------------------------------------------------------------------- + ' Funkcja XLKasujNote - Funkcja ta kasuje notę memoriałową + + Sub XLKasujNoteMem(NotaInfo As cdn_api.XLNotaInfo_20251) + Dim w As Integer + + With NotaInfo + .Wersja = Wersja + .Tryb = 2 + '.GIDTyp = Range("k7").Value + '.GIDFirma = Range("k8").Value + '.GIDNumer = Range("k9").Value + '.GIDLp = Range("k10").Value + End With + + wynikXL = 0 + Try + wynikXL = cdn_api.cdn_api.XLKasujNote(Sesja, NotaID, NotaInfo) + NotaID = 0 + Catch ex As Exception + wynikXL = -200 + Komunikat = "Nie rozpoznany błąd API XLKasujNote" + End Try + w = OpisBledu(986, wynikXL, 0) + End Sub + +End Module diff --git a/ImportDokMag/ImportDM.vb b/ImportDokMag/ImportDM.vb new file mode 100644 index 0000000..963e60d --- /dev/null +++ b/ImportDokMag/ImportDM.vb @@ -0,0 +1,262 @@ +'Public Module ImportDM +Partial Public Class MainFrm + Public GIDTyp, GIDFirma, GIDNumer, GIDLp As Integer 'aktualny dekret + Public DecimalGroupSep As String + Public DecimalSep As String + + Function szukaj_sep(ByVal line As String, ByVal start As Integer, ByVal separator As String) As Integer + Dim i As Integer + szukaj_sep = -1 + i = InStr(start, line, separator, CompareMethod.Text) + If i > start Then szukaj_sep = i + End Function + + Function ToDate(Data As String) As Date + Dim dd As Date + Dim pos As Integer + + Data = Replace(Data, "/", ".") + Data = Replace(Data, "-", ".") + pos = szukaj_sep(Data, 1, ".") + Dim TestAr() As String = Split(Data, ".", , CompareMethod.Text) + If pos = 5 Then 'rrrr.mm.dd + dd = DateSerial(TestAr(0), TestAr(1), TestAr(2)) + Else 'dd.mm.rrrr + dd = DateSerial(TestAr(2), TestAr(1), TestAr(0)) + End If + ToDate = dd + End Function + + Function XL_Date(Data As Date) As Integer + XL_Date = 36161 + CInt(Data.ToOADate()) + End Function + + Function Liczba(bf As String) As String + Dim w As String + + w = Replace(bf, ",", DecimalSep) + w = Replace(bf, ".", DecimalSep) + Liczba = w + End Function + + Public Function ZamknijDekret(ByVal CzyZapisac As Boolean) As Boolean + Dim ZamknijDekretZbiorczyInfo As New cdn_api.XLDekretZbiorczyInfo_20251 + Dim ret As Boolean = False + + With ZamknijDekretZbiorczyInfo + .Wersja = Wersja + .Tryb = 2 'Tryb wystawienia (interakcyjny/wsadowy) + .GIDTyp = GIDTyp 'GID dekretu (zwracanego po dodaniu) + .GIDFirma = GIDFirma ' + .GIDNumer = GIDNumer ' + .GIDLp = 0 ' + End With + XLZamknijDekretZb(ZamknijDekretZbiorczyInfo) + If wynikXL = 0 Then + ret = True + End If + If Not CzyZapisac Then + Dim KasujDekretInfo As New cdn_api.XLDekretInfo_20251 + With ZamknijDekretZbiorczyInfo + .Wersja = Wersja + .Tryb = 2 'Tryb wystawienia (interakcyjny/wsadowy) + .GIDTyp = GIDTyp 'GID dekretu (zwracanego po dodaniu) + .GIDFirma = GIDFirma ' + .GIDNumer = GIDNumer ' + .GIDLp = 0 ' + End With + XLKasujDekretzb(KasujDekretInfo) + End If + Return (ret) + End Function + + Public Function UtworzDekretZbiorczy(ByVal IdentKsieg As String, ByVal Data As Date, ByVal DokData As Date, ByVal DokZrodlowy As String, ByVal Opis As String, ByVal SumaCT As Decimal, ByVal SumaDT As Decimal) As Boolean + Dim DekretZbiorczyInfo As New cdn_api.XLDekretZbiorczyInfo_20251 + + listuj(CStr(Now) + "-> Dokument: " + IdentKsieg) + With DekretZbiorczyInfo + .Wersja = Wersja + .Tryb = 2 'Tryb wystawienia wsadowy + .Data = XL_Date(Data) 'Data dekretu + .DataDokumentu = XL_Date(DokData) 'Data dokumentu + .KwotaDebet = Str(SumaDT) + Chr(0) 'Kwota sumaryczna winien + .KwotaCredit = Str(SumaCT) + Chr(0) 'Kwota sumaryczna ma + .NumerDokumentu = DokZrodlowy + Chr(0) 'Numer dokumentu źródłowego + .Dziennik = My.Settings.Seria + Chr(0) 'Dziennik księgowań + .Bufor = "BUFOR" + Chr(0) 'Bufor księgowań (pusty = KG) + .Identyfikator = IdentKsieg 'identyfikator księgowy - numer dokument z Jastrzębia + .Opis = Opis + Chr(0) 'Opis dekretu + End With + XLDodajDekretZb(DekretZbiorczyInfo) + If wynikXL = 0 Then + GIDFirma = DekretZbiorczyInfo.GIDFirma + GIDTyp = DekretZbiorczyInfo.GIDTyp + GIDNumer = DekretZbiorczyInfo.GIDNumer + GIDLp = DekretZbiorczyInfo.GIDLp + Return (True) + Else + GIDFirma = 0 + GIDTyp = 0 + GIDNumer = 0 + GIDLp = 0 + Return (False) + End If + End Function + + Public Function DodajSkladowy(ByVal DZKNumer As Integer) As Boolean + Dim DekretSkladowyInfo As New cdn_api.XLDekretInfo_20251 + Dim ret As Boolean = True + Dim i As Integer + Dim line As String + + i = 0 + Try + Tamy_ImpDM_Dekr.Fill(DsMain.Tbmy_ImpDM_Dekr, DZKNumer) + BsTbmy_ImpDM_Dekr.ResetBindings(False) + BsTbmy_ImpDM_Dekr.MoveFirst() + While i < BsTbmy_ImpDM_Dekr.Count + With DekretSkladowyInfo + .Kwota = Str(BsTbmy_ImpDM_Dekr.Current("Kwota")) + Chr(0) 'Kwota pomnożona przez 100 + .NumerDokumentu = BsTbmy_ImpDM_Dekr.Current("DokZr") + Chr(0) 'Numer dokumentu + .KontoDebet = BsTbmy_ImpDM_Dekr.Current("KontoDebet") + Chr(0) 'Numer konta winien (WN) + .KontoCredit = BsTbmy_ImpDM_Dekr.Current("KontoCredit") + Chr(0) 'Numer konta ma (MA) + .Identyfikator = BsTbmy_ImpDM_Dekr.Current("Identyfikator") + .Opis = BsTbmy_ImpDM_Dekr.Current("Opis") + Chr(0) 'Opis dekretu + End With + line = " Dekret-> " & BsTbmy_ImpDM_Dekr.Current("DokZr") + line = line & " - Wn: " & BsTbmy_ImpDM_Dekr.Current("KontoDebet") + line = line & ", Ma: " & BsTbmy_ImpDM_Dekr.Current("KontoCredit") + line = line & ", kwota: " & Str(BsTbmy_ImpDM_Dekr.Current("Kwota")) + listuj(line) + XLDodajDekretSkl(DekretSkladowyInfo) + If wynikXL <> 0 Then ret = False + BsTbmy_ImpDM_Dekr.MoveNext() + i += 1 + End While + Catch ex As System.Exception + ret = False + System.Windows.Forms.MessageBox.Show(ex.Message) + End Try + + Return (ret) + End Function + + Public Function UtworzNote(ByVal NrDokumentu As String, ByVal Data As Date, ByVal DokData As Date, ByVal DokZrodlowy As String, ByVal tresc As String) As Boolean + Dim NotaInfo As New cdn_api.XLNotaInfo_20251 + + listuj(CStr(Now) + "-> Nota do: " + NrDokumentu) + If tresc <= " " Then tresc = "brak opisu" + With NotaInfo + .GIDTyp = 4145 'nota uproszczona + .KNPTyp = 0 + .KNPNumer = 0 + .KNPLp = 0 + .DataWprow = XL_Date(Data) 'Data dekretu + .DataDok = XL_Date(DokData) 'Data dokumentu + .DataOper = XL_Date(DokData) 'Data dokumentu + .Seria = My.Settings.Seria + Chr(0) + .NumerDokumentu = NrDokumentu + Chr(0) 'Numer dokumentu źródłowego + .Tresc = tresc + Chr(0) 'treść noty + End With + XLDodajNoteMem(NotaInfo) + If wynikXL = 0 Then + GIDFirma = NotaInfo.GIDFirma + GIDTyp = NotaInfo.GIDTyp + GIDNumer = NotaInfo.GIDNumer + GIDLp = NotaInfo.GIDLp + Return (True) + Else + GIDFirma = 0 + GIDTyp = 0 + GIDNumer = 0 + GIDLp = 0 + Return (False) + End If + End Function + + Public Function DodajPozycjeNoty(ByVal DZKNumer As Integer, ByVal DataDok As Date, ByVal DataOper As Date, ByVal opis As String, ByVal NrDok As String) As Boolean + Dim NotaPozycjaInfo As New cdn_api.XLPozycjaNotyInfo_20251 + Dim ret As Boolean = True + Dim i, KKS_Wn, KKS_Ma As Integer + Dim Rok As Integer + Dim sql, line, KontoWn, KontoMa As String + + i = 0 + If opis <= " " Then opis = "brak opisu" + Try + System.Threading.Thread.Sleep(200) 'chwilkę poczekaj na SQL + Tamy_ImpDM_Dekr.ClearBeforeFill = True + Tamy_ImpDM_Dekr.Fill(DsMain.Tbmy_ImpDM_Dekr, DZKNumer) + BsTbmy_ImpDM_Dekr.ResetBindings(False) + BsTbmy_ImpDM_Dekr.MoveFirst() + While i < BsTbmy_ImpDM_Dekr.Count + KontoWn = BsTbmy_ImpDM_Dekr.Current("KontoDebet") + KontoMa = BsTbmy_ImpDM_Dekr.Current("KontoCredit") + KKS_Wn = 0 + KKS_Ma = 0 + Rok = Year(DataDok) + sql = "select top(1) KKS_GIDNumer from CDN.Konta where KKS_Rok = " & CStr(Rok) & " and KKS_Konto = '" & KontoWn & "'" + line = GetOneVal(sql, DstConn_str) + If line > "" Then KKS_Wn = CInt(line) + sql = "select top(1) KKS_GIDNumer from CDN.Konta where KKS_Rok = " & CStr(Rok) & " and KKS_Konto = '" & KontoMa & "'" + line = GetOneVal(sql, DstConn_str) + If line > "" Then KKS_Ma = CInt(line) + With NotaPozycjaInfo + .Kwota = Str(BsTbmy_ImpDM_Dekr.Current("Kwota")) + Chr(0) 'Kwota + .NumerDokumentu = NrDok + Chr(0) 'Numer dokumentu + .KKSNumerDT = KKS_Wn + .KKSNumerCT = KKS_Ma + .Opis = opis + Chr(0) 'Opis z pozycji dekretu + .DataDok = XL_Date(DataDok) + .DataOper = XL_Date(DataDok) + End With + line = " pozycja -> " & BsTbmy_ImpDM_Dekr.Current("DokZr") + line = line & " - Wn: " & KontoWn + line = line & ", Ma: " & KontoMa + line = line & ", kwota: " & Str(BsTbmy_ImpDM_Dekr.Current("Kwota")) + listuj(line) + XLDodajPozycjeNotyMem(NotaPozycjaInfo) + If wynikXL <> 0 Then ret = False + BsTbmy_ImpDM_Dekr.MoveNext() + i += 1 + End While + Catch ex As System.Exception + ret = False + System.Windows.Forms.MessageBox.Show("Dodaj pozycje: " & ex.Message) + End Try + + Return (ret) + End Function + + Public Function ZamknijNote(ByVal CzyZapisac As Boolean) As Boolean + Dim NotaInfo As New cdn_api.XLNotaInfo_20251 + Dim ret As Boolean = False + + With NotaInfo + .Wersja = Wersja + .Tryb = 2 'Tryb wystawienia (interakcyjny/wsadowy) + .GIDTyp = GIDTyp 'GID dekretu (zwracanego po dodaniu) + .GIDFirma = GIDFirma ' + .GIDNumer = GIDNumer ' + .GIDLp = 0 ' + End With + XLZamknijNoteMem(NotaInfo) + If wynikXL = 0 Then + ret = True + End If + If Not CzyZapisac Then + Dim KasNotaInfo As New cdn_api.XLNotaInfo_20251 + With KasNotaInfo + .Wersja = Wersja + .Tryb = 2 'Tryb wystawienia (interakcyjny/wsadowy) + .GIDTyp = GIDTyp 'GID dekretu (zwracanego po dodaniu) + .GIDFirma = GIDFirma ' + .GIDNumer = GIDNumer ' + .GIDLp = 0 ' + End With + XLKasujNoteMem(KasNotaInfo) + End If + Return (ret) + End Function + +End Class diff --git a/ImportDokMag/ImportDokMag.vbproj b/ImportDokMag/ImportDokMag.vbproj new file mode 100644 index 0000000..97dfa8d --- /dev/null +++ b/ImportDokMag/ImportDokMag.vbproj @@ -0,0 +1,246 @@ + + + + + Debug + AnyCPU + {ACEDBC4B-04AD-423D-B0D7-B930B9998493} + WinExe + ImportDokMag.My.MyApplication + ImportDokMag + ImportDokMag + 512 + WindowsForms + v4.8 + true + true + false + + D:\Dokumenty\Praca\myCONSULT\Gotec\ImportDokMag\Publikuj\ + true + Disk + false + Foreground + 7 + Days + false + false + false + ImportDokMag + myCONSULT Sp. z o. o. + ImportDokMag + 0 + 2.0.0.0 + false + true + true + true + + + AnyCPU + true + full + true + true + bin\Debug\ + ImportDokMag.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 + false + + + AnyCPU + pdbonly + false + true + true + bin\Release\ + ImportDokMag.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 + false + + + On + + + Binary + + + Off + + + On + + + true + true + true + bin\x86\Debug\ + ImportDokMag.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 + full + x86 + MinimumRecommendedRules.ruleset + true + + + true + bin\x86\Release\ + ImportDokMag.xml + true + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 + pdbonly + x86 + MinimumRecommendedRules.ruleset + true + + + 7632AB20CCBEDCF1AC243A2A06A675C12FFD4C4D + + + ImportDokMag_TemporaryKey.pfx + + + true + + + false + + + cab.ico + + + false + + + ImportDokMag_TemporaryKey.pfx + + + + C:\xl\comarch xl\cdn_api20251.net.dll + + + + + + + + + + + + + + + + + + + + + + + + + + + dlgKonfig.vb + + + Form + + + True + True + DsMain.xsd + + + DsMain.xsd + + + + Form + + + MainFrm.vb + Form + + + Form + + + + True + Application.myapp + True + + + True + True + Resources.resx + + + True + Settings.settings + True + + + + + dlgKonfig.vb + + + MainFrm.vb + + + VbMyResourcesResXFileCodeGenerator + Resources.Designer.vb + My.Resources + Designer + + + + + DsMain.xsd + + + MSDataSetGenerator + DsMain.Designer.vb + Designer + + + DsMain.xsd + + + + MyApplicationCodeGenerator + Application.Designer.vb + + + SettingsSingleFileGenerator + My + Settings.Designer.vb + + + + + + + + + False + Microsoft .NET Framework 4.5.2 %28x86 i x64%29 + true + + + False + .NET Framework 3.5 SP1 + false + + + + + 7.1.1 + + + + \ No newline at end of file diff --git a/ImportDokMag/MainFrm.Designer.vb b/ImportDokMag/MainFrm.Designer.vb new file mode 100644 index 0000000..e02e18a --- /dev/null +++ b/ImportDokMag/MainFrm.Designer.vb @@ -0,0 +1,711 @@ + +Partial Class MainFrm + Inherits System.Windows.Forms.Form + + 'Formularz przesłania metodę dispose, aby wyczyścić listę składników. + + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wymagane przez Projektanta formularzy systemu Windows + Private components As System.ComponentModel.IContainer + + 'UWAGA: następująca procedura jest wymagana przez Projektanta formularzy systemu Windows + 'Możesz to modyfikować, używając Projektanta formularzy systemu Windows. + 'Nie należy modyfikować za pomocą edytora kodu. + + Private Sub InitializeComponent() + Me.components = New System.ComponentModel.Container() + Dim DataGridViewCellStyle1 As System.Windows.Forms.DataGridViewCellStyle = New System.Windows.Forms.DataGridViewCellStyle() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(MainFrm)) + Me.TlMainPanel = New System.Windows.Forms.TableLayoutPanel() + Me.Panel1 = New System.Windows.Forms.Panel() + Me.GbRadio = New System.Windows.Forms.GroupBox() + Me.RbAll = New System.Windows.Forms.RadioButton() + Me.RbBlack = New System.Windows.Forms.RadioButton() + Me.RbRed = New System.Windows.Forms.RadioButton() + Me.CbWewn = New System.Windows.Forms.CheckBox() + Me.CbZakup = New System.Windows.Forms.CheckBox() + Me.CbSprzedaz = New System.Windows.Forms.CheckBox() + Me.Panel2 = New System.Windows.Forms.Panel() + Me.CbKonto = New System.Windows.Forms.ComboBox() + Me.BsTbmyImpDMKonta = New System.Windows.Forms.BindingSource(Me.components) + Me.DsMain = New ImportDokMag.DsMain() + Me.Label3 = New System.Windows.Forms.Label() + Me.edRok = New System.Windows.Forms.NumericUpDown() + Me.Label2 = New System.Windows.Forms.Label() + Me.Label1 = New System.Windows.Forms.Label() + Me.CbMiesiac = New System.Windows.Forms.ComboBox() + Me.TableLayoutPanel1 = New System.Windows.Forms.TableLayoutPanel() + Me.BtImport = New System.Windows.Forms.Button() + Me.lbUwaga = New System.Windows.Forms.Button() + Me.BtKonfig = New System.Windows.Forms.Button() + Me.BtUsunFlage = New System.Windows.Forms.Button() + Me.BtKoniec = New System.Windows.Forms.Button() + Me.BtOdswiez = New System.Windows.Forms.Button() + Me.TcZakladki = New System.Windows.Forms.TabControl() + Me.TpDocs = New System.Windows.Forms.TabPage() + Me.DgvDokumenty = New System.Windows.Forms.DataGridView() + Me.colLp = New System.Windows.Forms.DataGridViewTextBoxColumn() + Me.colDokument = New System.Windows.Forms.DataGridViewTextBoxColumn() + Me.colDokZr = New System.Windows.Forms.DataGridViewTextBoxColumn() + Me.colDZKOpis = New System.Windows.Forms.DataGridViewTextBoxColumn() + Me.colDataWyst = New System.Windows.Forms.DataGridViewTextBoxColumn() + Me.colDataOper = New System.Windows.Forms.DataGridViewTextBoxColumn() + Me.colSumaCT = New System.Windows.Forms.DataGridViewTextBoxColumn() + Me.colSumaDT = New System.Windows.Forms.DataGridViewTextBoxColumn() + Me.colDZKDziennik = New System.Windows.Forms.DataGridViewTextBoxColumn() + Me.colDekret = New System.Windows.Forms.DataGridViewTextBoxColumn() + Me.colRokMiesiac = New System.Windows.Forms.DataGridViewTextBoxColumn() + Me.colDataImportu = New System.Windows.Forms.DataGridViewTextBoxColumn() + Me.colMagazyn = New System.Windows.Forms.DataGridViewTextBoxColumn() + Me.colKontrahent = New System.Windows.Forms.DataGridViewTextBoxColumn() + Me.colOpisDok = New System.Windows.Forms.DataGridViewTextBoxColumn() + Me.colDokKoryg = New System.Windows.Forms.DataGridViewTextBoxColumn() + Me.BsTbmy_ImpDM_Src = New System.Windows.Forms.BindingSource(Me.components) + Me.TpList = New System.Windows.Forms.TabPage() + Me.LstWynik = New System.Windows.Forms.ListBox() + Me.Timer = New System.Windows.Forms.Timer(Me.components) + Me.Tamy_ImpDM_Src = New ImportDokMag.DsMainTableAdapters.Tamy_ImpDM_Src() + Me.TableAdapterManager = New ImportDokMag.DsMainTableAdapters.TableAdapterManager() + Me.BsTbmy_ImpDM_Dekr = New System.Windows.Forms.BindingSource(Me.components) + Me.Tamy_ImpDM_Dekr = New ImportDokMag.DsMainTableAdapters.Tamy_ImpDM_Dekr() + Me.Tamy_ImpDM_Konta = New ImportDokMag.DsMainTableAdapters.Tamy_ImpDM_Konta() + Me.TlMainPanel.SuspendLayout() + Me.Panel1.SuspendLayout() + Me.GbRadio.SuspendLayout() + Me.Panel2.SuspendLayout() + CType(Me.BsTbmyImpDMKonta, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.DsMain, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.edRok, System.ComponentModel.ISupportInitialize).BeginInit() + Me.TableLayoutPanel1.SuspendLayout() + Me.TcZakladki.SuspendLayout() + Me.TpDocs.SuspendLayout() + CType(Me.DgvDokumenty, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.BsTbmy_ImpDM_Src, System.ComponentModel.ISupportInitialize).BeginInit() + Me.TpList.SuspendLayout() + CType(Me.BsTbmy_ImpDM_Dekr, System.ComponentModel.ISupportInitialize).BeginInit() + Me.SuspendLayout() + ' + 'TlMainPanel + ' + Me.TlMainPanel.ColumnCount = 2 + Me.TlMainPanel.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100.0!)) + Me.TlMainPanel.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 150.0!)) + Me.TlMainPanel.Controls.Add(Me.Panel1, 0, 0) + Me.TlMainPanel.Controls.Add(Me.Panel2, 0, 2) + Me.TlMainPanel.Controls.Add(Me.TableLayoutPanel1, 1, 1) + Me.TlMainPanel.Controls.Add(Me.BtKoniec, 1, 2) + Me.TlMainPanel.Controls.Add(Me.BtOdswiez, 1, 0) + Me.TlMainPanel.Controls.Add(Me.TcZakladki, 0, 1) + Me.TlMainPanel.Dock = System.Windows.Forms.DockStyle.Fill + Me.TlMainPanel.Location = New System.Drawing.Point(3, 3) + Me.TlMainPanel.Name = "TlMainPanel" + Me.TlMainPanel.RowCount = 3 + Me.TlMainPanel.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 7.102805!)) + Me.TlMainPanel.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 92.89719!)) + Me.TlMainPanel.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 65.0!)) + Me.TlMainPanel.Size = New System.Drawing.Size(774, 651) + Me.TlMainPanel.TabIndex = 0 + ' + 'Panel1 + ' + Me.Panel1.Controls.Add(Me.GbRadio) + Me.Panel1.Controls.Add(Me.CbWewn) + Me.Panel1.Controls.Add(Me.CbZakup) + Me.Panel1.Controls.Add(Me.CbSprzedaz) + Me.Panel1.Dock = System.Windows.Forms.DockStyle.Fill + Me.Panel1.Location = New System.Drawing.Point(3, 3) + Me.Panel1.Name = "Panel1" + Me.Panel1.Size = New System.Drawing.Size(618, 35) + Me.Panel1.TabIndex = 1 + ' + 'GbRadio + ' + Me.GbRadio.Controls.Add(Me.RbAll) + Me.GbRadio.Controls.Add(Me.RbBlack) + Me.GbRadio.Controls.Add(Me.RbRed) + Me.GbRadio.Dock = System.Windows.Forms.DockStyle.Right + Me.GbRadio.Location = New System.Drawing.Point(241, 0) + Me.GbRadio.Name = "GbRadio" + Me.GbRadio.Size = New System.Drawing.Size(377, 35) + Me.GbRadio.TabIndex = 3 + Me.GbRadio.TabStop = False + ' + 'RbAll + ' + Me.RbAll.AutoSize = True + Me.RbAll.Location = New System.Drawing.Point(297, 9) + Me.RbAll.Name = "RbAll" + Me.RbAll.Size = New System.Drawing.Size(73, 17) + Me.RbAll.TabIndex = 2 + Me.RbAll.TabStop = True + Me.RbAll.Text = "Wszystkie" + Me.RbAll.UseVisualStyleBackColor = True + ' + 'RbBlack + ' + Me.RbBlack.AutoSize = True + Me.RbBlack.Location = New System.Drawing.Point(164, 9) + Me.RbBlack.Name = "RbBlack" + Me.RbBlack.Size = New System.Drawing.Size(101, 17) + Me.RbBlack.TabIndex = 1 + Me.RbBlack.TabStop = True + Me.RbBlack.Text = "Nieimportowane" + Me.RbBlack.UseVisualStyleBackColor = True + ' + 'RbRed + ' + Me.RbRed.AutoSize = True + Me.RbRed.Location = New System.Drawing.Point(34, 9) + Me.RbRed.Name = "RbRed" + Me.RbRed.Size = New System.Drawing.Size(98, 17) + Me.RbRed.TabIndex = 0 + Me.RbRed.TabStop = True + Me.RbRed.Text = "Zaimportowane" + Me.RbRed.UseVisualStyleBackColor = True + ' + 'CbWewn + ' + Me.CbWewn.AutoSize = True + Me.CbWewn.Location = New System.Drawing.Point(146, 9) + Me.CbWewn.Name = "CbWewn" + Me.CbWewn.Size = New System.Drawing.Size(86, 17) + Me.CbWewn.TabIndex = 2 + Me.CbWewn.Text = "Wewnętrzne" + Me.CbWewn.UseVisualStyleBackColor = True + ' + 'CbZakup + ' + Me.CbZakup.AutoSize = True + Me.CbZakup.Location = New System.Drawing.Point(83, 9) + Me.CbZakup.Name = "CbZakup" + Me.CbZakup.Size = New System.Drawing.Size(57, 17) + Me.CbZakup.TabIndex = 1 + Me.CbZakup.Text = "Zakup" + Me.CbZakup.UseVisualStyleBackColor = True + ' + 'CbSprzedaz + ' + Me.CbSprzedaz.AutoSize = True + Me.CbSprzedaz.Location = New System.Drawing.Point(7, 9) + Me.CbSprzedaz.Name = "CbSprzedaz" + Me.CbSprzedaz.Size = New System.Drawing.Size(70, 17) + Me.CbSprzedaz.TabIndex = 0 + Me.CbSprzedaz.Text = "Sprzedaż" + Me.CbSprzedaz.UseVisualStyleBackColor = True + ' + 'Panel2 + ' + Me.Panel2.Controls.Add(Me.CbKonto) + Me.Panel2.Controls.Add(Me.Label3) + Me.Panel2.Controls.Add(Me.edRok) + Me.Panel2.Controls.Add(Me.Label2) + Me.Panel2.Controls.Add(Me.Label1) + Me.Panel2.Controls.Add(Me.CbMiesiac) + Me.Panel2.Dock = System.Windows.Forms.DockStyle.Fill + Me.Panel2.Location = New System.Drawing.Point(3, 588) + Me.Panel2.Name = "Panel2" + Me.Panel2.Size = New System.Drawing.Size(618, 60) + Me.Panel2.TabIndex = 2 + ' + 'CbKonto + ' + Me.CbKonto.DataSource = Me.BsTbmyImpDMKonta + Me.CbKonto.DisplayMember = "Konto" + Me.CbKonto.FormattingEnabled = True + Me.CbKonto.Location = New System.Drawing.Point(415, 20) + Me.CbKonto.Name = "CbKonto" + Me.CbKonto.Size = New System.Drawing.Size(121, 21) + Me.CbKonto.TabIndex = 5 + Me.CbKonto.ValueMember = "Konto" + ' + 'BsTbmyImpDMKonta + ' + Me.BsTbmyImpDMKonta.DataMember = "Tbmy_ImpDM_Konta" + Me.BsTbmyImpDMKonta.DataSource = Me.DsMain + ' + 'DsMain + ' + Me.DsMain.DataSetName = "DsMain" + Me.DsMain.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema + ' + 'Label3 + ' + Me.Label3.AutoSize = True + Me.Label3.Location = New System.Drawing.Point(366, 24) + Me.Label3.Name = "Label3" + Me.Label3.Size = New System.Drawing.Size(35, 13) + Me.Label3.TabIndex = 4 + Me.Label3.Text = "Konto" + ' + 'edRok + ' + Me.edRok.Location = New System.Drawing.Point(37, 22) + Me.edRok.Maximum = New Decimal(New Integer() {3000, 0, 0, 0}) + Me.edRok.Minimum = New Decimal(New Integer() {2000, 0, 0, 0}) + Me.edRok.Name = "edRok" + Me.edRok.Size = New System.Drawing.Size(120, 20) + Me.edRok.TabIndex = 0 + Me.edRok.Value = New Decimal(New Integer() {2019, 0, 0, 0}) + ' + 'Label2 + ' + Me.Label2.AutoSize = True + Me.Label2.Location = New System.Drawing.Point(169, 24) + Me.Label2.Name = "Label2" + Me.Label2.Size = New System.Drawing.Size(43, 13) + Me.Label2.TabIndex = 3 + Me.Label2.Text = "Miesiąc" + ' + 'Label1 + ' + Me.Label1.AutoSize = True + Me.Label1.Location = New System.Drawing.Point(4, 24) + Me.Label1.Name = "Label1" + Me.Label1.Size = New System.Drawing.Size(27, 13) + Me.Label1.TabIndex = 2 + Me.Label1.Text = "Rok" + ' + 'CbMiesiac + ' + Me.CbMiesiac.FormattingEnabled = True + Me.CbMiesiac.Items.AddRange(New Object() {"styczeń", "luty", "marzec", "kwiecień", "maj", "czerwiec", "lipiec", "sierpień", "wrzesień", "październik", "listopad", "grudzień"}) + Me.CbMiesiac.Location = New System.Drawing.Point(218, 21) + Me.CbMiesiac.Name = "CbMiesiac" + Me.CbMiesiac.Size = New System.Drawing.Size(121, 21) + Me.CbMiesiac.TabIndex = 1 + Me.CbMiesiac.Text = "styczeń" + ' + 'TableLayoutPanel1 + ' + Me.TableLayoutPanel1.AutoScroll = True + Me.TableLayoutPanel1.ColumnCount = 3 + Me.TableLayoutPanel1.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50.0!)) + Me.TableLayoutPanel1.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 100.0!)) + Me.TableLayoutPanel1.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50.0!)) + Me.TableLayoutPanel1.Controls.Add(Me.BtImport, 1, 1) + Me.TableLayoutPanel1.Controls.Add(Me.lbUwaga, 1, 4) + Me.TableLayoutPanel1.Controls.Add(Me.BtKonfig, 1, 6) + Me.TableLayoutPanel1.Controls.Add(Me.BtUsunFlage, 1, 3) + Me.TableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill + Me.TableLayoutPanel1.Location = New System.Drawing.Point(627, 44) + Me.TableLayoutPanel1.Name = "TableLayoutPanel1" + Me.TableLayoutPanel1.RowCount = 8 + Me.TableLayoutPanel1.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20.0!)) + Me.TableLayoutPanel1.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 32.0!)) + Me.TableLayoutPanel1.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 22.0!)) + Me.TableLayoutPanel1.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 42.0!)) + Me.TableLayoutPanel1.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 60.0!)) + Me.TableLayoutPanel1.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!)) + Me.TableLayoutPanel1.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) + Me.TableLayoutPanel1.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 57.0!)) + Me.TableLayoutPanel1.Size = New System.Drawing.Size(144, 538) + Me.TableLayoutPanel1.TabIndex = 3 + ' + 'BtImport + ' + Me.BtImport.Dock = System.Windows.Forms.DockStyle.Fill + Me.BtImport.Location = New System.Drawing.Point(25, 23) + Me.BtImport.Name = "BtImport" + Me.BtImport.Size = New System.Drawing.Size(94, 26) + Me.BtImport.TabIndex = 4 + Me.BtImport.Text = "Importuj" + Me.BtImport.UseVisualStyleBackColor = True + ' + 'lbUwaga + ' + Me.lbUwaga.BackColor = System.Drawing.Color.PaleGreen + Me.lbUwaga.Dock = System.Windows.Forms.DockStyle.Fill + Me.lbUwaga.Enabled = False + Me.lbUwaga.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(238, Byte)) + Me.lbUwaga.ForeColor = System.Drawing.Color.Red + Me.lbUwaga.Location = New System.Drawing.Point(25, 119) + Me.lbUwaga.Name = "lbUwaga" + Me.lbUwaga.Size = New System.Drawing.Size(94, 54) + Me.lbUwaga.TabIndex = 5 + Me.lbUwaga.Text = "Czekaj: pobieranie danych" + Me.lbUwaga.UseVisualStyleBackColor = False + Me.lbUwaga.Visible = False + ' + 'BtKonfig + ' + Me.BtKonfig.Dock = System.Windows.Forms.DockStyle.Fill + Me.BtKonfig.Location = New System.Drawing.Point(25, 456) + Me.BtKonfig.Name = "BtKonfig" + Me.BtKonfig.Size = New System.Drawing.Size(94, 22) + Me.BtKonfig.TabIndex = 6 + Me.BtKonfig.Text = "Konfiguracja" + Me.BtKonfig.UseVisualStyleBackColor = True + ' + 'BtUsunFlage + ' + Me.BtUsunFlage.Dock = System.Windows.Forms.DockStyle.Fill + Me.BtUsunFlage.Location = New System.Drawing.Point(25, 77) + Me.BtUsunFlage.Name = "BtUsunFlage" + Me.BtUsunFlage.Size = New System.Drawing.Size(94, 36) + Me.BtUsunFlage.TabIndex = 7 + Me.BtUsunFlage.Text = "Skasuj flagę importu" + Me.BtUsunFlage.UseVisualStyleBackColor = True + ' + 'BtKoniec + ' + Me.BtKoniec.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ + Or System.Windows.Forms.AnchorStyles.Left) _ + Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.BtKoniec.DialogResult = System.Windows.Forms.DialogResult.OK + Me.BtKoniec.Location = New System.Drawing.Point(627, 588) + Me.BtKoniec.Name = "BtKoniec" + Me.BtKoniec.Size = New System.Drawing.Size(144, 60) + Me.BtKoniec.TabIndex = 4 + Me.BtKoniec.Text = "Koniec" + Me.BtKoniec.UseVisualStyleBackColor = True + ' + 'BtOdswiez + ' + Me.BtOdswiez.Dock = System.Windows.Forms.DockStyle.Fill + Me.BtOdswiez.Location = New System.Drawing.Point(627, 3) + Me.BtOdswiez.Name = "BtOdswiez" + Me.BtOdswiez.Size = New System.Drawing.Size(144, 35) + Me.BtOdswiez.TabIndex = 5 + Me.BtOdswiez.Text = "Odśwież dane" + Me.BtOdswiez.UseVisualStyleBackColor = True + ' + 'TcZakladki + ' + Me.TcZakladki.Controls.Add(Me.TpDocs) + Me.TcZakladki.Controls.Add(Me.TpList) + Me.TcZakladki.Dock = System.Windows.Forms.DockStyle.Fill + Me.TcZakladki.Location = New System.Drawing.Point(3, 44) + Me.TcZakladki.Name = "TcZakladki" + Me.TcZakladki.SelectedIndex = 0 + Me.TcZakladki.Size = New System.Drawing.Size(618, 538) + Me.TcZakladki.TabIndex = 6 + ' + 'TpDocs + ' + Me.TpDocs.Controls.Add(Me.DgvDokumenty) + Me.TpDocs.Location = New System.Drawing.Point(4, 22) + Me.TpDocs.Name = "TpDocs" + Me.TpDocs.Padding = New System.Windows.Forms.Padding(3) + Me.TpDocs.Size = New System.Drawing.Size(610, 512) + Me.TpDocs.TabIndex = 0 + Me.TpDocs.Text = "Dokumenty" + Me.TpDocs.UseVisualStyleBackColor = True + ' + 'DgvDokumenty + ' + Me.DgvDokumenty.AllowUserToAddRows = False + Me.DgvDokumenty.AllowUserToDeleteRows = False + Me.DgvDokumenty.AllowUserToOrderColumns = True + Me.DgvDokumenty.AllowUserToResizeRows = False + DataGridViewCellStyle1.BackColor = System.Drawing.Color.WhiteSmoke + Me.DgvDokumenty.AlternatingRowsDefaultCellStyle = DataGridViewCellStyle1 + Me.DgvDokumenty.AutoGenerateColumns = False + Me.DgvDokumenty.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.DisplayedCells + Me.DgvDokumenty.ClipboardCopyMode = System.Windows.Forms.DataGridViewClipboardCopyMode.Disable + Me.DgvDokumenty.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize + Me.DgvDokumenty.Columns.AddRange(New System.Windows.Forms.DataGridViewColumn() {Me.colLp, Me.colDokument, Me.colDokZr, Me.colDZKOpis, Me.colDataWyst, Me.colDataOper, Me.colSumaCT, Me.colSumaDT, Me.colDZKDziennik, Me.colDekret, Me.colRokMiesiac, Me.colDataImportu, Me.colMagazyn, Me.colKontrahent, Me.colOpisDok, Me.colDokKoryg}) + Me.DgvDokumenty.DataSource = Me.BsTbmy_ImpDM_Src + Me.DgvDokumenty.Dock = System.Windows.Forms.DockStyle.Fill + Me.DgvDokumenty.EditMode = System.Windows.Forms.DataGridViewEditMode.EditProgrammatically + Me.DgvDokumenty.Location = New System.Drawing.Point(3, 3) + Me.DgvDokumenty.Name = "DgvDokumenty" + Me.DgvDokumenty.ReadOnly = True + Me.DgvDokumenty.RowHeadersVisible = False + Me.DgvDokumenty.RowTemplate.Resizable = System.Windows.Forms.DataGridViewTriState.[False] + Me.DgvDokumenty.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect + Me.DgvDokumenty.ShowEditingIcon = False + Me.DgvDokumenty.Size = New System.Drawing.Size(604, 506) + Me.DgvDokumenty.TabIndex = 0 + ' + 'colLp + ' + Me.colLp.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None + Me.colLp.DataPropertyName = "Lp" + Me.colLp.HeaderText = "Lp" + Me.colLp.Name = "colLp" + Me.colLp.ReadOnly = True + Me.colLp.Width = 44 + ' + 'colDokument + ' + Me.colDokument.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None + Me.colDokument.DataPropertyName = "Dokument" + Me.colDokument.HeaderText = "Dokument" + Me.colDokument.Name = "colDokument" + Me.colDokument.ReadOnly = True + Me.colDokument.Width = 81 + ' + 'colDokZr + ' + Me.colDokZr.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None + Me.colDokZr.DataPropertyName = "DokZr" + Me.colDokZr.HeaderText = "Dok. żródłowy" + Me.colDokZr.Name = "colDokZr" + Me.colDokZr.ReadOnly = True + Me.colDokZr.Width = 101 + ' + 'colDZKOpis + ' + Me.colDZKOpis.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None + Me.colDZKOpis.DataPropertyName = "DZK_Opis" + Me.colDZKOpis.HeaderText = "Opis dziennika" + Me.colDZKOpis.Name = "colDZKOpis" + Me.colDZKOpis.ReadOnly = True + Me.colDZKOpis.Width = 53 + ' + 'colDataWyst + ' + Me.colDataWyst.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None + Me.colDataWyst.DataPropertyName = "DataWyst" + Me.colDataWyst.HeaderText = "Data" + Me.colDataWyst.Name = "colDataWyst" + Me.colDataWyst.ReadOnly = True + Me.colDataWyst.Width = 55 + ' + 'colDataOper + ' + Me.colDataOper.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None + Me.colDataOper.DataPropertyName = "DataOper" + Me.colDataOper.HeaderText = "Data dokumentu" + Me.colDataOper.Name = "colDataOper" + Me.colDataOper.ReadOnly = True + Me.colDataOper.Width = 102 + ' + 'colSumaCT + ' + Me.colSumaCT.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None + Me.colSumaCT.DataPropertyName = "SumaCT" + Me.colSumaCT.HeaderText = "Suma Ma" + Me.colSumaCT.Name = "colSumaCT" + Me.colSumaCT.ReadOnly = True + Me.colSumaCT.Width = 71 + ' + 'colSumaDT + ' + Me.colSumaDT.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None + Me.colSumaDT.DataPropertyName = "SumaDT" + Me.colSumaDT.HeaderText = "Suma Winien" + Me.colSumaDT.Name = "colSumaDT" + Me.colSumaDT.ReadOnly = True + Me.colSumaDT.Width = 87 + ' + 'colDZKDziennik + ' + Me.colDZKDziennik.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None + Me.colDZKDziennik.DataPropertyName = "DZK_Dziennik" + Me.colDZKDziennik.HeaderText = "Dziennik" + Me.colDZKDziennik.Name = "colDZKDziennik" + Me.colDZKDziennik.ReadOnly = True + Me.colDZKDziennik.Visible = False + Me.colDZKDziennik.Width = 73 + ' + 'colDekret + ' + Me.colDekret.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None + Me.colDekret.DataPropertyName = "Dekret" + Me.colDekret.HeaderText = "Dekret" + Me.colDekret.Name = "colDekret" + Me.colDekret.ReadOnly = True + Me.colDekret.Visible = False + Me.colDekret.Width = 64 + ' + 'colRokMiesiac + ' + Me.colRokMiesiac.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None + Me.colRokMiesiac.DataPropertyName = "RokMiesiac" + Me.colRokMiesiac.HeaderText = "RokMiesiac" + Me.colRokMiesiac.Name = "colRokMiesiac" + Me.colRokMiesiac.ReadOnly = True + Me.colRokMiesiac.Visible = False + Me.colRokMiesiac.Width = 88 + ' + 'colDataImportu + ' + Me.colDataImportu.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None + Me.colDataImportu.DataPropertyName = "DataImportu" + Me.colDataImportu.HeaderText = "Data importu" + Me.colDataImportu.Name = "colDataImportu" + Me.colDataImportu.ReadOnly = True + Me.colDataImportu.Width = 85 + ' + 'colMagazyn + ' + Me.colMagazyn.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None + Me.colMagazyn.DataPropertyName = "Magazyn" + Me.colMagazyn.HeaderText = "Magazyn" + Me.colMagazyn.Name = "colMagazyn" + Me.colMagazyn.ReadOnly = True + ' + 'colKontrahent + ' + Me.colKontrahent.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None + Me.colKontrahent.DataPropertyName = "Kontrahent" + Me.colKontrahent.HeaderText = "Kontrahent" + Me.colKontrahent.Name = "colKontrahent" + Me.colKontrahent.ReadOnly = True + ' + 'colOpisDok + ' + Me.colOpisDok.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None + Me.colOpisDok.DataPropertyName = "Opis" + Me.colOpisDok.HeaderText = "Opis dokumentu" + Me.colOpisDok.Name = "colOpisDok" + Me.colOpisDok.ReadOnly = True + ' + 'colDokKoryg + ' + Me.colDokKoryg.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None + Me.colDokKoryg.DataPropertyName = "DokKoryg" + Me.colDokKoryg.HeaderText = "DokKoryg" + Me.colDokKoryg.Name = "colDokKoryg" + Me.colDokKoryg.ReadOnly = True + ' + 'BsTbmy_ImpDM_Src + ' + Me.BsTbmy_ImpDM_Src.DataMember = "Tbmy_ImpDM_Src" + Me.BsTbmy_ImpDM_Src.DataSource = Me.DsMain + ' + 'TpList + ' + Me.TpList.Controls.Add(Me.LstWynik) + Me.TpList.Location = New System.Drawing.Point(4, 22) + Me.TpList.Name = "TpList" + Me.TpList.Padding = New System.Windows.Forms.Padding(3) + Me.TpList.Size = New System.Drawing.Size(610, 512) + Me.TpList.TabIndex = 1 + Me.TpList.Text = "Przebieg pracy" + Me.TpList.UseVisualStyleBackColor = True + ' + 'LstWynik + ' + Me.LstWynik.Dock = System.Windows.Forms.DockStyle.Fill + Me.LstWynik.FormattingEnabled = True + Me.LstWynik.Location = New System.Drawing.Point(3, 3) + Me.LstWynik.Name = "LstWynik" + Me.LstWynik.Size = New System.Drawing.Size(604, 506) + Me.LstWynik.TabIndex = 0 + ' + 'Timer + ' + Me.Timer.Interval = 200 + ' + 'Tamy_ImpDM_Src + ' + Me.Tamy_ImpDM_Src.ClearBeforeFill = True + ' + 'TableAdapterManager + ' + Me.TableAdapterManager.BackupDataSetBeforeUpdate = False + Me.TableAdapterManager.Connection = Nothing + Me.TableAdapterManager.UpdateOrder = ImportDokMag.DsMainTableAdapters.TableAdapterManager.UpdateOrderOption.InsertUpdateDelete + ' + 'BsTbmy_ImpDM_Dekr + ' + Me.BsTbmy_ImpDM_Dekr.DataMember = "Tbmy_ImpDM_Dekr" + Me.BsTbmy_ImpDM_Dekr.DataSource = Me.DsMain + ' + 'Tamy_ImpDM_Dekr + ' + Me.Tamy_ImpDM_Dekr.ClearBeforeFill = True + ' + 'Tamy_ImpDM_Konta + ' + Me.Tamy_ImpDM_Konta.ClearBeforeFill = True + ' + 'MainFrm + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(96.0!, 96.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi + Me.CancelButton = Me.BtKoniec + Me.ClientSize = New System.Drawing.Size(780, 657) + Me.Controls.Add(Me.TlMainPanel) + Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon) + Me.MinimumSize = New System.Drawing.Size(796, 696) + Me.Name = "MainFrm" + Me.Padding = New System.Windows.Forms.Padding(3) + Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen + Me.Text = "Import dokumentów magazynowych 2.0.1 z 13.10.2026" + Me.TlMainPanel.ResumeLayout(False) + Me.Panel1.ResumeLayout(False) + Me.Panel1.PerformLayout() + Me.GbRadio.ResumeLayout(False) + Me.GbRadio.PerformLayout() + Me.Panel2.ResumeLayout(False) + Me.Panel2.PerformLayout() + CType(Me.BsTbmyImpDMKonta, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.DsMain, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.edRok, System.ComponentModel.ISupportInitialize).EndInit() + Me.TableLayoutPanel1.ResumeLayout(False) + Me.TcZakladki.ResumeLayout(False) + Me.TpDocs.ResumeLayout(False) + CType(Me.DgvDokumenty, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.BsTbmy_ImpDM_Src, System.ComponentModel.ISupportInitialize).EndInit() + Me.TpList.ResumeLayout(False) + CType(Me.BsTbmy_ImpDM_Dekr, System.ComponentModel.ISupportInitialize).EndInit() + Me.ResumeLayout(False) + + End Sub + + Friend WithEvents TlMainPanel As TableLayoutPanel + Friend WithEvents DgvDokumenty As DataGridView + Friend WithEvents Panel1 As Panel + Friend WithEvents CbWewn As CheckBox + Friend WithEvents CbZakup As CheckBox + Friend WithEvents CbSprzedaz As CheckBox + Friend WithEvents Panel2 As Panel + Friend WithEvents edRok As NumericUpDown + Friend WithEvents Label2 As Label + Friend WithEvents Label1 As Label + Friend WithEvents CbMiesiac As ComboBox + Friend WithEvents TableLayoutPanel1 As TableLayoutPanel + Friend WithEvents BtImport As Button + Friend WithEvents BtKoniec As Button + Friend WithEvents BtOdswiez As Button + Friend WithEvents DsMain As DsMain + Friend WithEvents BsTbmy_ImpDM_Src As BindingSource + Friend WithEvents Tamy_ImpDM_Src As DsMainTableAdapters.Tamy_ImpDM_Src + Friend WithEvents TableAdapterManager As DsMainTableAdapters.TableAdapterManager + Friend WithEvents lbUwaga As Button + Friend WithEvents TcZakladki As TabControl + Friend WithEvents TpDocs As TabPage + Friend WithEvents TpList As TabPage + Friend WithEvents LstWynik As ListBox + Friend WithEvents BtKonfig As Button + Friend WithEvents Timer As Timer + Friend WithEvents BsTbmy_ImpDM_Dekr As BindingSource + Friend WithEvents Tamy_ImpDM_Dekr As DsMainTableAdapters.Tamy_ImpDM_Dekr + Friend WithEvents BtUsunFlage As Button + Friend WithEvents colLp As DataGridViewTextBoxColumn + Friend WithEvents colDokument As DataGridViewTextBoxColumn + Friend WithEvents colDokZr As DataGridViewTextBoxColumn + Friend WithEvents colDZKOpis As DataGridViewTextBoxColumn + Friend WithEvents colDataWyst As DataGridViewTextBoxColumn + Friend WithEvents colDataOper As DataGridViewTextBoxColumn + Friend WithEvents colSumaCT As DataGridViewTextBoxColumn + Friend WithEvents colSumaDT As DataGridViewTextBoxColumn + Friend WithEvents colDZKDziennik As DataGridViewTextBoxColumn + Friend WithEvents colDekret As DataGridViewTextBoxColumn + Friend WithEvents colRokMiesiac As DataGridViewTextBoxColumn + Friend WithEvents colDataImportu As DataGridViewTextBoxColumn + Friend WithEvents colMagazyn As DataGridViewTextBoxColumn + Friend WithEvents colKontrahent As DataGridViewTextBoxColumn + Friend WithEvents colOpisDok As DataGridViewTextBoxColumn + Friend WithEvents colDokKoryg As DataGridViewTextBoxColumn + Friend WithEvents GbRadio As GroupBox + Friend WithEvents RbAll As RadioButton + Friend WithEvents RbBlack As RadioButton + Friend WithEvents RbRed As RadioButton + Friend WithEvents CbKonto As ComboBox + Friend WithEvents Label3 As Label + Friend WithEvents BsTbmyImpDMKonta As BindingSource + Friend WithEvents Tamy_ImpDM_Konta As DsMainTableAdapters.Tamy_ImpDM_Konta +End Class diff --git a/ImportDokMag/MainFrm.resx b/ImportDokMag/MainFrm.resx new file mode 100644 index 0000000..8bc3ae3 --- /dev/null +++ b/ImportDokMag/MainFrm.resx @@ -0,0 +1,539 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 1083, 18 + + + 17, 17 + + + True + + + True + + + True + + + True + + + 110, 17 + + + 661, 17 + + + 339, 17 + + + 488, 17 + + + 743, 17 + + + 925, 18 + + + 17, 57 + + + + + AAABAAYAMDAAAAEACACoDgAAZgAAACAgAAABAAgAqAgAAA4PAAAQEAAAAQAIAGgFAAC2FwAAMDAAAAEA + IACsJQAAHh0AACAgAAABACAArBAAAMpCAAAQEAAAAQAgAGwEAAB2UwAAKAAAADAAAABgAAAAAQAIAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD+/PsA/fn2APr18gD68+4A+/HoAPfv6wD17OcA9erkAPzt + 2gDz5+AA/OjSAPHj3ADw4dkA++HPAO/f1gD648kA7tzTAPvcxwDr2dEA8dvJAOvYzgD63L8A69fNAPzc + uAD/1MYA8tjCAOrUyQD/1rwA8ta+APzZrwDo0cUA8tO4AOfPwwD41LAA5czAAOjLugDkybwA/NCkAOPH + uQDuy6sA4ca4APrNoADGwcoA4sS1AP/LlgDgwrMA5sSqAPDGoADgwLEA8sSbAN6+rgDpw58A5sGkAPrK + hwDdu6wA/bOvAPzJggDduqkA6L6cAK23uwDcuKYAz7apAN23oQDwv4oA5LqXANq1owD/xnIA9cF9ANmz + oADYsp8A47eQANixngDYsZ0A7biFANevmwD3vnEA77p6ALGnswDSrZoA1q2YAP/AYwDrtn4A4LGLAPa7 + bQDVq5UA9blrAP++XACvo60A1KmTAOqydwDUp5EA3KqGANOnjwDTo5QA/7tUANKkjQDlrXQAn52sAOms + cADmrHAA/7hMANinewDRoIoA3qZ2AKmZoQDPn4cAdJa6AHaWuADpqWcAy5iRAP2zSQDOnYQAzZyEAP+0 + QgAnlc4A0p1+AMyagQBxlqkAJZLLAFqXqwAxksMA/7A6AMuXfgDsp1IA6qRQAP+tMwDJk3kANorAANiZ + ZQDmoFEAyJJ2AIuLlwD/qy0A6aBKADSEwABwhqYAGoW/AMaNcADgmE4A/KYoAP+nJAC6inUAxY1oAP+l + HgDDiGwA25NMAGR7pgDBh2kA/6MZAMKFZgAmerQA145KAL+DZgD/oRMA/J8XAPSbIAD/nw4Av4BgANKI + RwD2mRYA/50JAPeYFACneW0AAG67AAZuuADGflEA/5sDALx7WgDzkxQAa3KDAP6ZAAD6lgYAyX5EALt3 + VAD8lQAAAG2rALl2VAD2kgUAJmejAPmSAAAAa6UAuXNPACZlngAFZakAwXZCAPSOAADwiwQA8YoAAO6I + AAATXqEAAAAAAOuFAAC9bzwAtWtGAOiCAAAAX5kA5oABACVUngDkfgAAsWU+AOB6AAAGUJoA23UAAMxs + FADXcAAAbVlOANJrAACsWTAAd1BOALhcGQCpVCkAyl0AAE1NTQBiTkIApkwgAI9HLgDEVAAAslAKAF9G + OQC4UAAAqEkTAIVDKwCqSQ0AtUsAAKFEFQCgQhMAqkYFAH89IQCvQwAAqUMAAJ08DACmQAAASTcuAGA3 + JQCjPQAAoDoAAGAzIACaNgIAgjATAIEwEwCMMwUAmTMAAHQyDwCFLgMAki0AAHIuAAB/KgAAQCUXAIEh + AABDIxIAViMAACIZFQA+GQAACwgHAAAAAAC/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/ + v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v9XV1dW/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/ + v7+/v7+/v7+/v7+/v7+/v7+/1fDw287V1dXVv7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/ + v7+/v7/V8PXy8vLt7dvO1dXVv7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v9Xw5ezy8vLy + 8u7y7erW1dXV1b+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/1fDlz+zy8vLy8vLy8vLu8u3q1tXV + 1b+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7/V8OXPz+vy8sIVOp7X8vLy8vLy7u3t6tXV1dW/v7+/v7+/ + v7+/v7+/v7+/v7+/v9Xv5c3Nz+vuwrYTFxshI0uo1/Ly8vLy8vLt7erV1b+/v7+/v7+/v7+/v7+/v7+/ + 1eTgy8vNzevisa4RFRsfIyUpLjNgsdfu8vLy8vL51b+/v7+/v7+/v7+/v7+/v7/V3uDJy8vNzevisa4P + ExcbHyMnLDE3PUJJcbHX7vL51b+/v7+/v7+/v7+/v7+/v9Xe4MfJycvLzeviqKgNERUbHyElKS4zOj1F + S1VbYIOe0dW/v7+/v7+/v7+/v7+/1djcw8fHycnLy+viqKgMDxEXGx8jJywxMz1CSFBZXWdqddW/v7+/ + v7+/v7+/v7+/5tzAwMPHx8nJy+vinqgKDQ8TFx8hJScuMzo9RUtQWWBncdW/v7+/v7+/v7+/v7+/6Ly9 + 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 + AAAAPwAA/gAAAAA/AAD+AAAAAD8AAP4AAAAAPwAA/gAAAAA/AAD+AAAAAD8AAP4AAAAAPwAA/gAAAAA/ + AAD+AAAAAD8AAP4AAAAAPwAA/gAAAAA/AAD+AAAAAH8AAP4AAAAAfwAA/gAAAAB/AAD+AAAAAH8AAP4A + AAAAfwAA/gAAAAB/AAD+AAAAAH8AAP4AAAAAfwAA/gAAAAB/AAD+AAAAAH8AAP4AAAAAfwAA/gAAAAB/ + AAD+AAAAAH8AAP4AAAAAfwAA/gAAAAB/AAD+AAAAAH8AAP4AAAAAfwAA/gAAAAB/AAD+AAAAAP8AAP4A + AAAP/wAA//4AH///AAAoAAAAIAAAAEAAAAABAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP/8 + +QD++vUA+vXzAPr08AD+8+kA+PDtAPbu6gD27OgA/e/cAPXq5gD06OMA8+bgAPTn2gD55tcA/OfSAPHj + 3ADw4NgA/OPNAO/e1gDz3c0A9t7JAO3b0gDt2tEA7NnQAPTdwwDr2M4A99bIAOvWzAD72rwA6tXKAOrU + yQDu1MIA6NLHAPjYtADr0sIA58/EANPKzgDmzcAA8dGzAPDQtQDz0qwA6823AOXLvQDkybsA782vAOHI + uwDjx7kA7syrAOfIswD/z5wA4sa4APbNogDixLYA+tCVAOjHrADryKcA4cO0AOjFqwDgwbIA37+vAMK4 + wADmuawA3burAOO9oQCzs8YAt7PDANu5qQDlvZ0A3LmnAPvHfADjs6oA27elAPzFeADru5EA2rWjALq0 + rwDatKEA1rOiAOCvpgCtrroA2bOfAP/EbQD4wXUAyq+oANixnQDYsJwAzqymAOG0jwD3vnIA16+bAP/B + ZADWrZkA6KedAOKxiQDWrJcAy6iiAO+0fACwpbAA3a6LANWqlADUqZMA/71bAMiknwDTppAA3quAANap + hQDZqYMA3qp+AP+6UgDHn5kA9rJiANGjjQDMoI4A0KGJAM+giAD/tkoARZy/AM6dhQD/tEMAzZuCAP+x + PQDMmH4ApZaHAMqVewD/rjYAgIivAP+tMgBwjKYA/6wxAMSRewDIkncA6aFLAHGFqQD/qisAE4XJAKGJ + iwDalloA96M1AMaNcQDmm0YA/6ckACeFtQDFi24ALYK3AP+lHgD3nygAJ3y2AP+jGgD/ohYAu4JsALqH + YAAzd7AA/6ARAMeDWgDrlSkAv4BgAP+eDQBNeJkA+JsVAL9/YAD/nAgA5I4oAL17WgD/mgMA/pkAADJt + oAC8eFcA2IYxAN6IJwD8lgAAzn47APqTAAD5kgAAunRRABNmqQDWgSsA2IEnAPWPAADMezUA8owAALdv + SwDwigAAi2xdAMx4LQDReiYABmObAKRrUQDthgAAAAAAALZpSQDrhAAAzHUmAOiCAADLdCUAAF2ZAMxz + IADlfgAA4nwAALJlPgDgeQAAzG8XAN13AADcdQAAsmE0ANhyAACwXDkAzGwPAK5dNQCZWzsA1G4AAG5X + SwDMaAcAq1cvAM9oAADMZgAAqlMxAMljAACFVjAA2lwFAMZgAAB0Tz0ATU1NAK5TGADJVwAAYUc7AMBR + AACvTgsAm0cdAGVEMwChQxQAt0kAALFGAACeQBEAnz4OAKxBAACROxIAoT0GAJ48BQCmPQAAWjYkAJU9 + AACbOAcAoDkAAJs4AwCZNwUAWjEfAJkzAACVLwAAZCkRAH8qAACCKAAAciUJAHEkBwCBIQAAHQ8IAL29 + vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb3e3t7e3r29vb29vb29vb29vb29 + vb29vb29vb29vb293vX38v353t7e3t69vb29vb29vb29vb29vb29vb29vd711/f39/f3/v359t7e3t69 + vb29vb29vb29vb29vb3e7tLW9+Y1L3jH6vf3/v359t7e3r29vb29vb29vb293u7NzdLqtS8aISszUYvQ + 6vf+/vzevb29vb29vb29vd7tyMrN0umuKxceJCw5P0hVcqDV0OHevb29vb29vb3e7MXFyMvN6a4mExof + KzM8P0taZXB2cd69vb29vb29veS/v8XGysvmpyQRFh4kM0VLUVVfaHJu3r29vb29vb293La8wcXGyuaj + HxATGiFydnZzcl9kcG7evb29vb29vb3ctLy/wcXI5qAaDBEWVntMQ0h8fFxoZ969vb29vb29vdmytLy/ + xcbmnBcKEBOOh6/Dup56VmRn3r29vb29vb292a20trzBxenlFwcLECUcIS5ikEVNXGfevb29vb29vb3X + rLK0vL/B+v8TBgoMERgfJC85P0hWYN69vb29vb29vdeqrbK0vL/6/xMDBwsQExohKzM8Q0tg3r29vb29 + vb2916WqrbS2vPraHg0GCAwRFx4kLDk/SFfevb29vb29vb3UpaqssrS2mjRraWyXY0BEJjEmMzxOV969 + vb29vb29vdShpaqtsm8EAgkiKjBjajJh8N3Tt/vevb29vb29vb29z5mkpaqSDwAAAg8tKCcdT7vR3+Px + +969vb29vb29vb3PlJ2lqqyKDgABBRU6HUeWj3Noc3r43r29vb29vb29vcmNlaGlqq2rDgEFGxI+gnZf + WmVwdvfevb29vb29vb29yYaRmaSlqsIgFEqJXXFVSEhRX2hy8969vb29vb29vb3EgY2UnaWquQsjN2t4 + enZ2cFxaZXDv3r29vb29vb29vcR5ho2VoaWxCAwRUHWTpoCIZVFcaOvevb29vb29vb29wHd9hpGZpKkH + CxBBQj1+hZhUS1Zk6N69vb29vb29vb24dHl/jZSdogQIDBEWHiQsNTxFUVzn3r29vb29vb29vbhtdHmB + jZWbAwYKEBMYHyYvOz9LVeLevb29vb29vb29s2Ztd32GkZICBAgMERYcJCs1PEVN4t69vb29vb29vb2z + W2Z0eX+Nn0ZJU1kpJy04OC85P0jg3r29vb29vb29vatSW0k2GREWHCEmLFhYXmlshIyosNvevb29vb29 + vb29zMzMzMyPg3Y/Pz94eI+nvr6+ztjVzL29vb29vb29vb29vb29vr6+vr6+vr6+vr6+vb29vb29vb29 + vb3//////+D////AB///gAB//wAAD/4AAA/8AAAH+AAAB/gAAAf4AAAH+AAAB/gAAAf4AAAH+AAAB/gA + AAf4AAAH+AAAB/gAAA/4AAAP+AAAD/gAAA/4AAAP+AAAD/gAAA/4AAAP+AAAD/gAAA/4AAAP+AAAD/gA + AA/4AAAf/4AH/ygAAAAQAAAAIAAAAAEACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC/WQAAy2QAAM9p + AADTbQAA1G4AANhxAADcdgAA3ngAAOJ7AADngAAA7IUAAO+IAADxiwAA9I0AAPWPAAD2kAAA+ZIAAPyV + AAD9lwAA/pkAAP+ZAgD4kwMA8YwEAK0vBgA2FwgA/5wKAJ08CwD7mxAAcDYRAP+fEQB5LRIAfTEWAII/ + GgD/oxoA/aMdAP+nIwB9QCUAgUUlAHU7JgCGSSYAjE0nAHI9KACzQyoA/6osAJBCLQC7ZS0AeUkwALpS + MwD/rzcAzHY4AM96OABwSTkAsGE5AM96OQDWfDkA8H45APKBPgBvTkAA/7JAAJxTQgC1a0YA/7ZIALdu + SgDviEwATU1NAP+8WADujVkA7I9hALuGZQD6u2sAyo9tAOuXbwDUlXAA5KxyAOGTdADPmHQAzYR3AN2s + eQDVoHsA0aB8AMuXfQDNm4IA26iDAM+giADitowA0qSOANKljgDLno8A06eQANOokgC2m5MA2KyUAOW6 + lADswJQAzqOWAOa/mgCuppsA16+bANConQDYsJ0AWXKeAPHKnwDcqKAA2bOgAOrEoADatKIA06+kAM+0 + pgDbt6YA27imANy4pwBJe6kA3LqpANm5qgDWtawA782sAPzcrgBznK8A9M+vANmuswDhwrMA4sS1ALOs + twDjx7kA9Ni5AJyguwDs0bsA8dO7AOTJvADn0MMA8trDAPnixQDo0sYA9dnGAPbfxgDp08gA9+HJAOrW + ywDlx84A7NrQAO3b0gDt3NMA797WAPDh2QCJy9oA8eTdAPTo4wD06uQA9evlAPfu6gD78uoA+vTxAAAA + AAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmJiYmJiY + QEBAQJiYmJiYmJiYmJiYQB8mM0BAQECYmJiYmJiYQAAaTC8XHik5QECYmJiYQAMBNIuBeGxQKixAmJiY + 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 + DYU5HBA/OSscElVVAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAJGFxcLPhwOJT4gDFd1IQLlskwA/9t1AP/ZcwD/13EA/9VuAP+iPAD/n0AR/7p1Uv+7dlT/7t3U/+zY + zv/q1cr/6NHF/+bNwf/kybz/4sa4/+DBsv/fvq7/0qSN/7p1Uv+nTyP/mjYE/5kzAP+ZMwD/mTMA/5kz + AP+ZMwD/gSEA/zYcELM7IRVjQy8iJk0zMwr/AAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAADMaAApAHA4kOx0MV24gA9izTQD/4HkA/913AP/bdQD/2HIA/9ZwAP+jPQD/n0AR/7p1 + U/+7d1T/79/X/+3a0f/r183/6dPI/+jQxP/ly7//48i6/+HEtf/gwLH/3rys/9y5p//ataL/2LGd/82c + g/+6dVL/pUwg/5o2A/+ZMwD/gSEA/zceEdI/JhmOSS8kRl06LhaAQEAEAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAADwaCR47HwxSbyAD17VOAP/kfQD/4XsA/995AP/cdgD/2nQA/9hx + AP+jPQD/n0AR/716Wf+9e1r/8OHZ/+7d1f/s2c//6tXL/+nSxv/mzsL/5Mq8/+LGuP/hwrP/376v/927 + qv/bt6X/2bOg/9evm//VrJb/06eS/9Kkjf/IkXX/v35f/25FQ/BJLCG4Ry0hZVU5MiRgQEAIAAAAAQAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADsbDjhwIAPRtlAA/+iCAP/lfwD/43wA/+F6 + AP/eeAD/3HYA/9lzAP+jPQD/n0AR/716Wf++fFv/8OLb/+/f1//t29L/69fN/+rUyf/o0MT/5czA/+PI + uv/ixbb/4MCx/969rP/cuaf/2rWj/9ixnv/WrZn/1KqU/9OmkP/Roov/z5+H/8yagf9jPjnURi4hdVE6 + LixxVTkJAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHYgArq3UQD/7IYA/+qD + AP/ngQD/5H4A/+J8AP/geQD/3ncA/9t1AP+jPQD/oEIT/79/X/++fV3/8uXf//Dh2f/u3tX/7NnQ/+vW + zP/p0sb/587C/+TKvf/jx7j/4cKz/9++r//du6r/3Lim/9mzoP/Xr5v/1ayX/9Sokv/SpI3/0KGJ/82c + hP9jPTfXRywfelM3LC5mTTMKAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKU/ + AP/wiQD/7YcA/+uFAP/pggD/54AA/+R+AP/hewD/33kA/912AP+kPgD/oEIT/79/X//AgWH/8+fh//Hj + 3P/v4Nj/7dzT/+zYzv/q1Mn/6NDE/+PHuf/WrJf/1KiR/9Sokf/VqpT/1auV/9atmP/YsZ3/1q6a/9Sq + lP/TppD/0aOL/8+fh/9kPzjXRywfelM3LC5mTTMKAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAKhBAP/xiwD/74kA/+yGAP/rhAD/6IIA/+Z/AP/jfQD/4XoA/954AP+kPgD/oEIT/8GE + Zf/Bg2P/9Onj//Ll3//w4dr/7t7W/+zZ0P/r1sz/5cq8/82agf/OnIP/zpyD/86cg//PnoX/z5+G/8+f + hv/QoIj/1q2Y/9Wsl//UqJP/0qWO/9Chif9kPzrXRywhelM3LC5mTTMKAAAAAQAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAKhCAP/zjQD/8YoA/+6IAP/shgD/6oMA/+eBAP/lfgD/4nwA/+B5 + AP+kPgD/oEIT/8KEZv/ChGb/9evm//To4v/x49z/7+DY/+3c0//s2M7/y5d9/8aNcf/Ll33/38Cw/969 + rf/Zs6D/zp2F/8mSd//KlHr/zZuC/9aumv/Vq5X/06aR/9GjjP9kQTvXRy4helM3Mi5mTTMKAAAAAQAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKhCAP/1jwD/8owA//CJAP/thwD/64UA/+mC + AP/ngAD/5H4A/+F7AP+lPgD/oUMU/8OIaf/EiWz/9u3p//Xq5P/y5uD/8OLa/+7e1v/m1c//a3KD/xqF + v/8Abrv/E16h/yVUnv9keqX/rqCr/9iwnf/Dh2n/x45y/9ewnP/WrZj/1KmT/9Klj/9kQTvXRy4helM3 + Mi5mTTMKAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKlCAP/3kAD/9I4A//GL + AP/viQD/7YcA/+uEAP/oggD/5n8A/+N9AP+lPwD/oUQV/8SKbP/Fim3/9+/r//bs5//06OL/8eTd/+/g + 2P/Gwcr/AG2r/zSEwP90lrr/Jmej/wBamf8AZJn/AGWa/wVlqf+neW3/0qaP/9iyn//Xr5v/1auV/9On + kf9lQjzXRy4helM3Mi5mTTMKAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKlD + AP/5kgD/9o8A//ONAP/xigD/7ogA/+yGAP/qgwD/54EA/+V+AP+lPwD/oUQV/7+Hav+1eFr/+PHu//fu + 6f/16uT/8+bg//Di2//o2tX/5tbQ/+vXzf/p08j/6NDE/+XLv/+xp7P/ZHum/zGSw/+Li5f/3Lmn/9m0 + ov/YsZ3/1q2Y/9SplP9lQz3XRy4helM9Mi5mTTMKAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAKlDAP/6kwD/+JEA//WPAP/yjAD/8IkA/+2HAP/rhQD/6YIA/+eAAP+lPwD/hS4D/wUE + A/+6dVP/+fTx//jw7P/27Of/9Onj//Hk3v/w4dn/7t3U/+zZz//q1cv/6dLG/+bNwf/kyrz/4sa4/5ab + rf/Zuq7/3bup/9u3pf/Zs6D/16+b/9Wslv9mRUDXRy4helM9Mi5mTTMKAAAAAQAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAKlDAP/7lQD/+ZMA//eQAP/0jgD/8YsA/++JAP/thwD/64QA/+iC + AP+mQAD/fyoA/wAAAP+6dlP/+vb0//ny7//37ur/9erl//Pn4f/x49z/79/X/+3b0v/r183/6tTJ/+jQ + xP/lzL//48i6/+HEtf/gwLH/3rys/9y5p//ataP/2LGd/9atmf9mRUDXRy4kelM9Mi5mTTMKAAAAAQAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKlDAP/9lwD/+pQA//mSAP/2jwD/840A//GK + AP/uiAD/7IYA/+qDAP+mQAD/fyoA/wAAAP+7dlT/+/j2//n08f/48Oz/9uzo//Tp4//y5d//8OHZ/+7d + 1f/s2dD/69bL/+nSxv/nzsL/5Mq9/+LGuP/hwrP/376v/927qv/cuKb/2bOg/9ewnP9nRkHXRy4kelM9 + Mi5mTTMKAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKpEAP/+mAD//JYA//qT + AP/4kQD/9Y8A//KMAP/wiQD/7YcA/+uFAP+mQAD/fyoA/wAAAP+7dlT//Pr4//r29P/58u//9+7q//Xr + 5v/z5+H/8ePc/+/f1//t3NP/7NjO/+rUyf/o0cX/5czA/+PIuv/ixbb/4MGy/969rP/cuaf/2rWj/9ix + nv9nRkHXSTAkelk9Mi5mTU0KAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKpE + AP//mQD//pgA//uVAP/5kwD/95AA//SOAP/xiwD/74kA/+2HAP+mQAD/fyoA/0AlF/+7d1X/9uzl//Lr + 5//69fL/+PDs//bt6P/06eP/8uXf//Dh2v/u3tb/7drR/+vWzP/p08f/58/D/+XLvv/jx7n/4cKz/9+/ + r//du6r/3Lim/9mzof9oSELXSjAkeVk9Mi5mTU0KAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAKpEAf//mwT//pkA//2XAP/6lAD/+ZIA//aPAP/zjQD/8YoA/+6IAP+qRAD/p1Qq/9ig + e///y5b/7biF/+CqeP/GkWf/5LKI/+Cqd//iw7L/6cWh/+zXy//w28r/7dzT/+zYzv/q1Mr/6NHF/+XM + wP/kybv/4sW2/+DBsv/eva3/3bqo/9q2pP9pSUPRSS8jc1k7LytxVVUJAAAAAQAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAKpFAv//nQn//5oC//6YAP/8lgD/+pMA//iRAP/1jwD/84wA//CK + AP+8YBz/5r+k///w3f//4Ln/5sSm//rQpf/VrYf/2Kh+/9ioff/vu4f/16R1/+ascP/us3n/6axw/9yq + hv/psHT/2bKf/8Womv/Ptqn/3cK0/+HDtP/fv7D/3buq/9y4pv9vTki/Ry8kXVU+LiFtSUkHAAAAAQAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKpFA///nw///5wH//+ZAP/+mAD/+5UA//qT + AP/3kAD/9I4A//OTFP/1yJ7//v37///////969H/++bL//rkyv/86NL/5cWu//jYt//lwqP/+NOr/9+2 + kP/0xZn//9Cg///Llv/LgU7/QyMS/xEMCv8iGRX/WkQ4/0k3Lv+yh3P/wHtU/9iynv93U0+eSC0kOVo8 + LRFVVVUDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKpFBP//oRT//54M//+b + BP/+mQD//ZcA//uUAP/5kgD/+Jsd//vQpv/+/fz//////////////v7/+uXM//jgxv/33sX/+uXR//PV + uv/53cL/8Myv//jVtf/717L//9a6/76Fbv97QiX/dDIP/4wzBf+aPAD/ci4A/1YjAP8+GQD/jisA/0ws + I8E4HhBfQikZH1UrKwYAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKpG + Bf//oxn//6AR//+dCv//mgL//pgA//2WAP/6lAD/+ZoV//rNoP/+/fz//////////////v7///v3//bf + x//02sH/89e///nhyv/wz7T/+Ni7//zbuv//1b7/yZaQ/7h/aP/ChWb/tnhY/8mSdv/AdkX/vW88/7RX + Ff+yUAr/kS0A/zQaDbE0HA9TOhcMFgAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAKpGBv//piD//6IX//+fD///nAf//5kB//6YAP/8lQD/+pMA//eYFP/1yJ7//v37//// + /////v7///v3///37//y2ML/8dS8//DRuv/43ML//N7C///Yw//NmpL/uoFq/8SJa//GjnL/06eR/9So + kv/SpI3/0KCJ/82chP/AdED/lTAA/zMaDa8zGg1QMxoNFAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAKpGB///qCX//6Ud//+hFP//ngz//5sF//6ZAP/9lwD/+5QA//mS + AP/MbBT/78Kc//79+////v7///v3///37///8+f/79K9/+3Ntv/84sn//9rI/9GdlP/BjHf/ypV8/82c + hP/Wrpr/1q2Z/9Wqlf/TppD/0aKL/8+eh//Dd0H/mTQA/zMaDa8zGg1QMxoNFAAAAAIAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKpHCP//qiv//6cj//+jGf//oBL//50K//+a + Av/+mAD//ZYA//qUAP/IYgD/2Jll/+zBoP/+/Pv///v3//307P/ft57//djQ//zm0v//0Mj/1KOV/8eW + gf/RpI3/1KmT/9q1ov/ZtKH/17Cc/9asl//UqJL/0qWO/9Chif/Ge0P/nDYA/zMaDa8zGg1QMxoNFAAA + AAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKpHCP//rTH//6ko//+m + IP//ohf//58P//+cB///mQH//pgA//yVAP/NZgD/3KNy//Hg1f/ovZ3//fbw/+O4mf/8rkb/2aJ6//2z + r//YnI//zqGN/9mynv/btqT/3byr/9y5qP/ataP/2LKe/9eumv/VqpX/06aQ/9Gji//KfkT/nzkA/zMa + Da8zGg1QMxoNFAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKpH + Cf//rjX//6wu//+oJf//pR3//6EU//+eDP//mwX//pkA//2XAP/RagD/36Zz//To4v/w3dL/3qyK/+u2 + fv/pqWf/1YpG/8uXgP/LmoT/0qWO/9Kkjf/TppD/06eQ/9Spk//YsZ7/2bSh/9ewnP/WrJj/1KiS/9Kl + jv/MgkX/ozsA/zMaDa8zGg1QMxoNFAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAKpICv//sDr//60y//+qK///pyP//6MZ//+gEv//nQr//5oC//6YAP/VbwD/4qp0//Xq + 5f/z5+H/8ePc/+/f1//jx7n/4MCw/8+ehv/GjXD/zZyD/8yagP/MmYD/yJJ3/8mTef/Llnz/2LGe/9iy + n//Xrpr/1auW/9Onkf/PhUb/pz4A/zMaDa8zGg1QMxoNFAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAKpIC///s0D//683//+tMf//qSj//6Yg//+iF///nw///5wH//+Z + Af/ZcwD/5a52//bs5//06eP/8uXe//Dh2v/u3dX/rbe7/1qXq/8lksv/Jnqz/yZlnv9xlqn/cIam/6mZ + of/Chmf/16+b/9m0ov/YsZ3/1qyY/9Spk//SiUj/q0AA/zMaDa8zGg1QMxoNFAAAAAIAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKpJDP//tUX//7I9//+uNf//rC7//6gl//+l + Hf//oRT//54M//+bBf/ddwD/57F3//fu6v/16uX/8+fh//Lk3P/v39f/dpa4/wZuuP8nlc7/Jnq0/wZQ + mv8AWpn/AF2Z/wBrpf82isD/27in/9q2pP/Zs5//166a/9Wrlv/VjEn/r0UA/zMaDa8zGg1QMxoNFAAA + AAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKpJDf//t0r//7RC//+w + Ov//rTL//6or//+nI///oxn//6AS//+dCv/hfAH/6rR4//jx7f/27ej/9Onk//Pm3//x4tr/7t7W/+za + 0f/r183/6dPH/+fPw//lyr3/3cO4/6+mr/+nn6v/3byr/9u4p//ataL/2LGd/9atmf/YkEr/skgA/zMa + Da8zGg1QMxoNFAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKpJ + Dv//ulH//7ZH//+zQP//rzf//60x//+pKP//piD//6MY//+fEP/mgAH/7bh5//nz7//37+v/9evm//To + 4v/y5N3/8ODY/+3c1P/r2M7/6tXK/+jRxf/mzcH/5Mm8/+PGt//hwrL/3r6u/9y6qf/bt6X/2bOg/9ev + m//bk0z/tkoA/zMaDa8zGg1QMxoNFAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAKpKD///vFb//7lO//+1Rf//sj3//641//+sL///qCb//6Ue//+iFf/qhAL/8Lt7//r1 + 8v/48e3/9u3p//Tp5P/z5t//8eLa/+7e1v/s2tH/69fN/+nTyP/nz8P/5cu+/+PHuf/ixLX/4MCx/928 + rP/buKf/2rWi/9ixnf/elk3/uk0A/zMaDa8zGg1QMxoNFAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAKpKEP//vlr//7tT//+3Sv//tEL//7E7//+uM///qyz//6cj//+k + Gv/uiQP/8798//v39f/58+//9/Ds//Xr5v/06OL/8uTd//Dg2P/u3dT/7NnP/+rVy//o0sb/5s3B/+TJ + vP/jxrj/4cKy/96+r//cuqn/27el/9m0of/hmk7/vlAA/zMaDa8zGg1QMxoNFAAAAAIAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKpKEf//v2D//71Y//+6Uf//tkj//7NA//+w + OP//rTH//6ko//+mIf/yjQT/9sJ9//z59//69fL/+PLu//bt6f/16uT/8+bg//Hj2//u3tb/7dvS/+vX + zf/p1Mn/59DE/+XLv//kyLr/4sS2/+DAsf/dvKz/3Lmo/9q2o//knlD/wlEA/zMaDa8zGg1QMxoNFAAA + AAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKpLEf//wWX//79e//+8 + Vv//uU7//7VF//+yPf//rzb//6wv//+oJv/2kgX/+cV+//37+v/79/X/+fPw//fw7P/27Of/9Oji//Ll + 3v/w4dn/7t3V/+zZz//q1sz/6NLG/+fOwv/kybz/48a4/+HDs//evq//3buq/9u3pf/noVH/xVYA/zQb + Da00Gg1PMxoNFAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKpL + Ev//xGz//8Bj//++Wv//u1T//7dK//+0Q///sTv//64z//+rLP/6lgb/+pwV//qkKf/6pCn/+aMo//mj + J//5sU3/975y//e9cP/2u23/9blr//HDjP/uzKv/7Mmn/+vGo//pwp//5sSr/+LFtv/gwbH/3r2t/9y5 + qP/qpVL/yVkA/zQbDqE0HA5JORwOEgAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAKpLE///xnL//8Jo//+/Yf//vVj//7pR//29Xv/6yof/9Ni4//Df1f/u3tX/7NrR/+vX + zf/q1Mr/6NHF/+bNwf/pwp7/57+a/+a8l//kuZT/47eQ/+eucf/sp1L/66VR/+qkTv/pok3/6aBK//Sb + IP/2mhf/9pkX//aYFv/1mBX/zlsA/zceD3g5HA42OycUDQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAKpMFP//yHf//s2F//zbrP/56tb/9+/r//Xs5//06eP/8uXf//Hi + 2//v39f/7dzT/+zZz//q1cv/6dPI/+fPw//mzMD/5Mm7/+LGt//gwrP/376v/968q//cuKf/2LKe/86d + hP/MmoH/t29L/7ZuSf+lTCD/okUX/7NINP+tMRH/oicE3jgcDjczHwoZKysABgAAAAEAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJs4B/+pVCr/qVQp/6lTKP+pUyj/sWQ9/7Rq + Rf+4b0z/u3dV/8WLbv/EiWz/w4hq/8KGaP/ChWb/wYNk/8CCYv+/gGD/v35e/75+Xf+0akX/rFkw/6lU + Kv+jSBz/rDsb6nohAdN5IQLHciECpHMhAqFmIQRtaSIEZlIgCDY6IQgfOiMMFjckEg4rKwAGAAAAAQAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgSEAEIEh + ACGBIQArgSEANYEhAD2BIQBAgSEATIEhAFeBIQBhgSEAcYEhAHyBIQCAgSEAgIEhAICBIQCAgSEAbYEh + AF2BIQBQgSEATIEhAEaBIQA6gSEALYEhAB+BIQAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//4AD///AAD//AAA//8AAP/4AAAP/wAA//AAAAD/ + AAD/4AAAAD8AAP/AAAAAHwAA/4AAAAAPAAD/AAAAAA8AAP4AAAAABwAA/gAAAAAHAAD+AAAAAAMAAP4A + AAAAAwAA/gAAAAADAAD+AAAAAAMAAP4AAAAAAwAA/gAAAAADAAD+AAAAAAMAAP4AAAAAAwAA/gAAAAAD + AAD+AAAAAAMAAP4AAAAAAwAA/gAAAAADAAD+AAAAAAMAAP4AAAAAAwAA/gAAAAADAAD+AAAAAAMAAP4A + AAAABwAA/gAAAAAHAAD+AAAAAA8AAP4AAAAADwAA/gAAAAAPAAD+AAAAAA8AAP4AAAAADwAA/gAAAAAP + AAD+AAAAAA8AAP4AAAAADwAA/gAAAAAPAAD+AAAAAA8AAP4AAAAADwAA/gAAAAAPAAD+AAAAAA8AAP4A + AAAADwAA/gAAAAAPAAD+AAAAAA8AAP4AAAAADwAA/gAAAAAPAAD+AAAAAB8AAP+AAAB//wAAAAAAACgA + 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 + hf+cNQD/MxoNvzMaDUAzGg0QAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMxwGf//qSr//6Ud//+g + Ef//mgT//pgA//uVAP/LdCX/7tTC//Pdzf/ru5H/2pZa/+innf/OoY3/2LGd/9u2pP/bt6X/2bKe/9Ws + l//TppD/0KCJ/6A5AP8zGg2/MxoNQDMaDRAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzHIe//+s + Mf//qCX//6Ma//+eDf//mQH//ZcA/9F6Jv/06OP/69LC/+jHrP/Zp4P/y5mB/8yZgP/OnIT/zpyE/9Gi + i//Wrpn/16+a/9SplP/Ro43/pj0A/zMaDb8zGg1AMxoNEAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADMcyL//7A6//+rLf//piL//6IW//+cCP/+mQD/2IEn//Xs5//y5t//8ODY/62uuv9FnL//J3y2/zJt + oP9wjKb/oYmL/9Spk//Zsp//1q2Y/9Onkf+sQQD/MxoNvzMaDUAzGg0QAAAAAgAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAMx1Jv//tEP//641//+qKv//pR7//6AS//+aBP/eiCf/9+/r//Tp5P/x49z/s7PG/7ez + w//CuMD/gIiv/3GFqf8zd7D/yq+o/9q2o//YsJz/1aqU/7FGAP8zGg2/MxoNQDMaDRAAAAACAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAzHcr//+3S///sj///60y//+oJv//oxr//54N/+SOKP/58u//9uzo//Pm + 4f/w4dn/7dvS/+rVy//nz8T/5Mq8/+LEtf/evq7/3Lmn/9mzoP/WrZn/t0kA/zMaDb8zGg1AMxoNEAAA + AAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADMeS///7pU//+1SP//sDr//6su//+mIv//ohb/65Up//r1 + 8//37+z/9erl//Hk3f/v3tb/7NjP/+nTyP/mzcH/48e5/+DBsv/du6v/2rak/9ixnf+9TwD/MxoNvzMa + DUAzGg0QAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMx6Mv//vl3//7lP//+0Q///rjb//6oq//+l + Hv/znSn//Pn3//nz8P/27ej/8+fh//Dh2f/t29P/69bM/+fQxf/lyr3/4sS2/9+/r//cuaf/2rSh/8NS + AP80Gw67NRoNPjYbDQ8AAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzHw3///BY///vFn//7dL//+y + QP//rTL//6gm//ibFf/7x3z/+sR5//jBdf/3vnL/89Ks//HSs//uza3/7Mmn/+nGp//jx7n/4cKz/928 + q//bt6X/yVcA/zYcDKk5Gws2PB4PDgAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADMfTv//8Rt//7B + ZP/9xnb/+tCV//Tdw//v4Nj/7dvS/+vWzP/o0cb/5s3A/+PIuv/gso3/4raQ/+Kxif/grYL/3qp//+mh + S//mm0b/2IYx/9aBK//aXAX/RCQNcT4iCyRGFwAJAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALJh + NP/Lj2r/yZR5/8iSdv/Hj3P/xYtu/8WJbP/DiGr/woVn/8GDZP/AgGH/u3dX/7lyUv+2aUn/sVo7/6RI + I++nTib0q1Mu9KdJKOKnTS7bizcWupJAHrNtOBs1RysODkBAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAgSEAHIEhACSBIQAqgSEAMoEhADuOMhFWhScFXIEhAHCBIQCAgSEAgIEhAICBIQCAiy4Mco8z + EW6GKAZOgSEANYEhABypVDEdqVQxCgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAP/4A + AAf8AAAD+AAAAfgAAAH4AAAA+AAAAPgAAAD4AAAA+AAAAPgAAAD4AAAA+AAAAPgAAAD4AAAA+AAAAPgA + AAD4AAAA+AAAAfgAAAH4AAAB+AAAAfgAAAH4AAAB+AAAAfgAAAH4AAAB+AAAAfgAAAH4AAAB+AAAA/gA + AP8AAAAAKAAAABAAAAAgAAAAAQAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAUYu + FwVHKw4OQiYJIUorCYY+IQubQiMKhkMjCV06HgsmOx8KHj4jCRdBIQ0QPSQMCUkkAAMAAAAAAAAAAE0z + AARHKw4OQScMIok2A9BzIAPsYR4G3k0dCc00Gw22NRsMrjwfCqFCIwl+RCYLTUEkEBpHKRQKAAAAAAAA + AABGLAkMQiYNIZY9A9a/WQD/nTwL/82Ed/+6UjP/rS8G/3EgA/BbHgbcRxwKxzYcDq1IKhaCRigZFQAA + AAAAAAAASCsKFptBAtHTbQD/y2QA/7BhOf/s2tD/59DD/+HCs//bt6b/y5d9/7NDKv+CKhLiRy4hnkYs + HhwAAAAAAAAAAJo5AZveeAD/4nsA/89pAP+1a0b/8OHZ/+rWy//kybz/27im/9iwnf/SpI7/ypyN+0kv + I6JHLB8eAAAAAAAAAAC+UADH74gA/+eAAP/UbgD/t25K//To4//t29L/rqab/7abk//Nm4L/06iS/82i + lPtJMCWjRi8iHgAAAAAAAAAAwVUAx/SNAP/shQD/2HEA/3lJMP/37ur/8OHZ/5ygu/+zrLf/WXKe/9mz + oP/Pp5v7SjEmokovIh4AAAAAAAAAAMFVAcf5kgD/8YsA/9x2AP82Fwj/+vTx//Tq5P/t3NP/6NLG/+LE + tf/cuKf/0q6j+0oxJaJILR8eAAAAAAAAAADLVwHH/ZcA//aQAP/iewD/0aB8/+K2jP/drHn/5r+a//HK + n//PtKb/2bmq/9W0q/tJLRyYSCsZHQAAAAAAAAAA7FoBx/+ZAv/8lQD/+rtr///////238b/8dO7//TP + r/+7hmX/gj8a/3A2Ef+SQS7nRygMi0UqExsAAAAAAAAAAO5eCMf/nxH//pkA//GMBP/wzbD/+/Lq//XZ + xv/YrJT/z6CI/9OnkP/Kj23/aiUG30gpC4pGJwwaAAAAAAAAAADrZxrH/6cj//+cCv/1jwD/7NG7/+zA + lP/UlXD/z6CI/9Kljv/Xr5v/z5h0/28qBt9KLAqKSysMGgAAAAAAAAAA6W0qx/+vN///oxr/+JMD//La + w//x5N3/icva/3Ocr/9Je6n/2rSi/9Wge/90LgbeTi4KiUwsDBoAAAAAAAAAAOdwNcf/tkj//6os//ub + EP/34cn/9evl/+/e1v/p08j/48e5/9y6qf/bqIP/ejIG3VAxC4ZNLw0YAAAAAAAAAADlekfH/7xY//+y + QP/9ox3//Nyu//nixf/02Ln/782s/+rEoP/lupT/5Kxy/7BNDNxYORltTzMTFgAAAAAAAAAA129Fv+2v + k//jsqP/3Kig/+rV2//lx87/2a6z/9mlodbRi4rKz4uIoNuAYZXgkW5l////CgAAAADAAAAAwAAAAMAA + AADAAAAAwAAAAMAAAePAAAD/wAAA/8AAAP/AAAD/wAAA/8AAAP/AABP/wABW/8AAxP/AAdn/AAAAAA== + + + \ No newline at end of file diff --git a/ImportDokMag/MainFrm.vb b/ImportDokMag/MainFrm.vb new file mode 100644 index 0000000..43e91b5 --- /dev/null +++ b/ImportDokMag/MainFrm.vb @@ -0,0 +1,532 @@ +Imports System.Globalization +Imports System.IO +Imports System.Text + +Public Class MainFrm + Public Tylko_Listing As Boolean + Public f_out As StreamWriter ' Plik wyjściowy + Public SourceConnected As Boolean = False + + Private Structure DokKolumny + Public cLp As Integer + Public cDokument As Integer + Public cDokZr As Integer + Public cDZKOpis As Integer + Public cDataWyst As Integer + Public cDataOper As Integer + Public cSumaCT As Integer + Public cSumaDT As Integer + Public cDZKDziennik As Integer + Public cDekret As Integer + Public cRokMiesiac As Integer + Public cDataImp As Integer + Public cMagazyn As Integer + Public cKontrahent As Integer + Public cOpisDok As Integer + Public cDokKor As Integer + End Structure + + Private SpFlag, ZakFlag, WewFlag As Integer + Private RM, Rok, Mies As Integer + Private SrcConn_str, DstConn_str As String + Private KD As DokKolumny + + '---------------------------------------------------------- + Private Const INT_lens As Integer = 1 + Private ReadOnly p As Int32() = {2, 4, 7, 9, 3, INT_lens} + + Public Function Encrypt(ByVal inputstr As String) As String + Dim str As StringBuilder + Dim b As Int32 = 6 + Dim i, j, k, c, cc, bb, lens As Int32 + + If inputstr > "" Then + str = New StringBuilder(inputstr) + lens = str.Length + While (lens < b) OrElse (lens Mod b) + str.Append(” “) + lens += INT_lens + End While + cc = (lens / b) - INT_lens + For i = 0 To cc + bb = b - INT_lens + For j = 0 To bb + k = p(j) + 50 + c = (b * i + j) + str.Replace(str.Chars(c), Chr(Asc(str.Chars(c)) + k), c, INT_lens) + Next + Next + Return str.ToString + Else + Return "" + End If + str = Nothing + End Function + + Public Function Decrypt(ByVal inputstr As String) As String + Dim str As StringBuilder + Dim b As Int32 = 6 + Dim i, j, k, c, c1, cc, bb, lens As Int32 + + If inputstr > "" Then + + str = New StringBuilder(inputstr) + lens = str.Length + While (lens < b) OrElse (lens Mod b) + str.Append(” “) + lens += INT_lens + End While + + cc = (lens / b) - INT_lens + For i = 0 To cc + bb = b - INT_lens + For j = 0 To bb + k = p(j) + 50 + c = (b * i + j) + c1 = Asc(str.Chars(c)) + c1 -= k + str.Replace(str.Chars(c), Chr(c1), c, INT_lens) + Next j + Next i + Return str.ToString + Else + Return "" + End If + str = Nothing + End Function + + Private Function zrob_polaczenie(srv As String, baza As String, user As String, pass As String) + Dim cnstr As String + + cnstr = "Data Source=" & srv & ";Initial Catalog=" & baza + cnstr += ";Persist Security Info=false;User ID=" & Decrypt(user).Trim & ";Password=" & Decrypt(pass).Trim & ";TrustServerCertificate=True;Connection Timeout=30" + Return (cnstr) + End Function + + Private Function PolaczBaze() As Boolean + Dim B1, conn, pp, K1 As String + Dim ret As Boolean = False + + lbUwaga.Text = "Czekaj: Logowanie do ERPXL" + lbUwaga.Visible = True + lbUwaga.BringToFront() + lbUwaga.Refresh() + + If Strings.Left(UCase(My.Settings.BazaDst), 6) = "CDNXL_" Or Strings.Left(UCase(My.Settings.BazaDst), 6) = "ERPXL_" Then + B1 = Mid(My.Settings.BazaDst, 7) + Else + B1 = My.Settings.BazaDst + End If + K1 = My.Settings.SerwerKlucza + If Not Zalogowany Then listuj(" Logowanie do ERP XL - proszę czekać...") + ret = Zaloguj(B1, "", "", K1) + If ret Then + listuj(" sprawdzanie dostępności licencji...") + ret = XLSprawdzLicencje() + If ret Then + listuj(" Zalogowano pomyslnie do ERP XL") + conn = FunkcjeXL.Polaczenie() 'string połączenia wyznaczony przez API + pp = InStr(conn.ToUpper, "SERVER=") + If pp > 0 Then + conn = Mid(conn, pp) + End If + DstConn_str = conn + ret = True + Else + listuj("!! Nie udało się pobrać licencji stanowiskowej ERP XL.") + Wyloguj() + ret = False + End If + Else + listuj("!! Nie udało się zalogować. Proszę uruchomić aplikację ERP XL !!") + End If + If Not ret Then + TcZakladki.SelectedTab = TpList + TpList.Select() + End If + lbUwaga.Text = "Czekaj: pobieranie danych" + lbUwaga.Visible = False + lbUwaga.Invalidate() + Return ret + End Function + + '---------------------------------------------------------- + + Public Sub UstawKolumny() + With KD + .cLp = DgvDokumenty.Columns.Item("colLp").Index + .cDokument = DgvDokumenty.Columns.Item("colDokument").Index + .cDokZr = DgvDokumenty.Columns.Item("colDokZr").Index + .cDZKOpis = DgvDokumenty.Columns.Item("colDZKOpis").Index + .cDataWyst = DgvDokumenty.Columns.Item("colDataWyst").Index + .cDataOper = DgvDokumenty.Columns.Item("colDataOper").Index + .cSumaCT = DgvDokumenty.Columns.Item("colSumaCT").Index + .cSumaDT = DgvDokumenty.Columns.Item("colSumaDT").Index + .cDZKDziennik = DgvDokumenty.Columns.Item("colDZKDziennik").Index + .cDekret = DgvDokumenty.Columns.Item("colDekret").Index + .cRokMiesiac = DgvDokumenty.Columns.Item("colRokMiesiac").Index + .cDataImp = DgvDokumenty.Columns.Item("colDataImportu").Index + .cMagazyn = DgvDokumenty.Columns.Item("colMagazyn").Index + .cKontrahent = DgvDokumenty.Columns.Item("colKontrahent").Index + .cOpisDok = DgvDokumenty.Columns.Item("colOpisDok").Index + .cDokKor = DgvDokumenty.Columns.Item("colDokKoryg").Index + End With + End Sub + + Private Sub CbWewn_CheckedChanged(sender As Object, e As EventArgs) Handles CbWewn.CheckedChanged + If CbWewn.Checked Then + WewFlag = 1 + Else + WewFlag = 0 + End If + OdswiezDane() + End Sub + + Private Sub BtOdswiez_Click(sender As Object, e As EventArgs) Handles BtOdswiez.Click + If SourceConnected Then OdswiezDane() + End Sub + + Private Sub CbZakup_CheckedChanged(sender As Object, e As EventArgs) Handles CbZakup.CheckedChanged + If CbZakup.Checked Then + ZakFlag = 1 + Else + ZakFlag = 0 + End If + OdswiezDane() + End Sub + + Private Sub edRok_ValueChanged(sender As Object, e As EventArgs) Handles edRok.ValueChanged + If SourceConnected And IsNumeric(edRok.Value) Then + Rok = edRok.Value + Tamy_ImpDM_Konta.Fill(Me.DsMain.Tbmy_ImpDM_Konta, Rok, Mies) + BsTbmyImpDMKonta.ResetBindings(False) + OdswiezDane() + End If + End Sub + + Private Sub CbMiesiac_TextChanged(sender As Object, e As EventArgs) Handles CbMiesiac.TextChanged + If SourceConnected Then + Mies = CbMiesiac.Items.IndexOf(CbMiesiac.Text) + 1 + Tamy_ImpDM_Konta.Fill(Me.DsMain.Tbmy_ImpDM_Konta, Rok, Mies) + BsTbmyImpDMKonta.ResetBindings(False) + OdswiezDane() + End If + End Sub + + Private Sub DgvDokumenty_KeyPress(sender As Object, e As KeyPressEventArgs) 'Handles DgvDokumenty.KeyPress + Dim wiersz As DataGridViewRow + Dim check As Boolean + Dim colWybrany, colData, kk As Integer + + Select Case e.KeyChar + Case " " + kk = 0 + colWybrany = DgvDokumenty.Columns.Item("Wybrany").Index + colData = DgvDokumenty.Columns.Item("colDataImportu").Index + For Each wiersz In DgvDokumenty.SelectedRows + If wiersz.Cells(colData).Value <= "1990-01-01 00:00:00" Then + check = wiersz.Cells(colWybrany).Value + wiersz.Cells(colWybrany).Value = Not check + If (kk Mod 10) = 0 Then Application.DoEvents() + End If + kk += 1 + Next + End Select + End Sub + + Private Sub CbSprzedaz_CheckedChanged(sender As Object, e As EventArgs) Handles CbSprzedaz.CheckedChanged + If CbSprzedaz.Checked Then + SpFlag = 1 + Else + SpFlag = 0 + End If + OdswiezDane() + End Sub + + Private Sub DgvDokumenty_RowPostPaint(sender As Object, e As DataGridViewRowPostPaintEventArgs) Handles DgvDokumenty.RowPostPaint + If Not DgvDokumenty.Rows(e.RowIndex).Cells("colDataImportu").Value Is DBNull.Value Then + If CStr(DgvDokumenty.Rows(e.RowIndex).Cells("colDataImportu").Value) > "1990-01-01" Then DgvDokumenty.Rows(e.RowIndex).DefaultCellStyle.ForeColor = Color.Red + End If + End Sub + + Private Sub BtImport_Click(sender As Object, e As EventArgs) Handles BtImport.Click + Dim DoImportu As New List(Of DataGridViewRow) 'kopia zaznaczonych do importu dokumentów + Dim Aktwiersz As DataGridViewRow + Dim AktualnyDokument As String = "" + Dim ret, Nr_ZapisuSrc As Integer + Dim sql, ss, tresc, nrdok, s1, s2 As String + + If Not SourceConnected Then Return + + If DgvDokumenty.Rows.Count > 0 Then + If System.Windows.Forms.MessageBox.Show("Czy zaimportować zaznaczone dokumenty ?", "", MessageBoxButtons.YesNo) = DialogResult.No Then + Return + End If + + DoImportu.Clear() + UstawKolumny() 'powiązanie nazw kolumn z ich indeksem + For Each wiersz In DgvDokumenty.SelectedRows 'zrób kopię zaznaczonych na niebiesko dokumentów + Dim targetRow = CType(wiersz.Clone(), DataGridViewRow) + For Each cell As DataGridViewCell In wiersz.Cells + targetRow.Cells(cell.ColumnIndex).Value = cell.Value + Next + DoImportu.Add(targetRow) + Next + If DoImportu.Count > 0 Then + 'zaloguj do XL + listuj("Start importu: " + Now) + ret = PolaczBaze() + If ret Then + DgvDokumenty.CurrentCell = DgvDokumenty(0, 0) + Aktwiersz = DgvDokumenty.CurrentRow + For Each wiersz In DoImportu + Aktwiersz = wiersz + DgvDokumenty.CurrentCell = DgvDokumenty(0, wiersz.Cells.Item(0).Value - 1) 'pokaż aktualnie przetwarzany wiersz + If (wiersz.Cells.Item(KD.cDataImp).Value <= "1990-01-01 00:00:00") And (AktualnyDokument <> wiersz.Cells.Item(KD.cDokument).Value) Then 'dekret nie zaimportowany + AktualnyDokument = wiersz.Cells.Item(KD.cDokument).Value 'Nowa nota memoriałowa - numer dokumentu w Jastrzębiu + Nr_ZapisuSrc = wiersz.Cells.Item(KD.cDekret).Value 'Dekret (DZK_GIDNumer) źródłowy + tresc = " " + s1 = AktualnyDokument.Substring(0, 2) + If s1 = "PZ" Or s1 = "WZ" Or s1 = "KK" Or s1 = "PK" Or s1 = "WK" Then + ss = IIf(IsNothing(wiersz.Cells.Item(KD.cKontrahent).Value), " ", wiersz.Cells.Item(KD.cKontrahent).Value) + If ss > " " Then tresc = ss + End If + ss = IIf(IsNothing(wiersz.Cells.Item(KD.cOpisDok).Value), " ", wiersz.Cells.Item(KD.cOpisDok).Value) + If ss > " " Then + If tresc > " " Then tresc += "; " + ss Else tresc = ss + End If + If tresc < " " Then tresc = "brak opisu" + nrdok = "" + s1 = AktualnyDokument.Substring(0, 3) + If s1 = "PZK" Or s1 = "PKI" Or s1 = "WZK" Or s1 = "WKE" Or s1 = "RWK" Or s1 = "PWK" Then + nrdok = AktualnyDokument + ", " + IIf(IsNothing(wiersz.Cells.Item(KD.cDokKor).Value), "", wiersz.Cells.Item(KD.cDokKor).Value) + Else + nrdok = AktualnyDokument + End If + System.Threading.Thread.Sleep(200) 'chwilkę poczekaj na SQL + Try + If UtworzNote(nrdok, wiersz.Cells.Item(KD.cDataWyst).Value, '"Data Wystawienia" + wiersz.Cells.Item(KD.cDataWyst).Value, 'wszystkie daty takie same + wiersz.Cells.Item(KD.cDokZr).Value, '"Dokument źródłowy" + tresc) Then '"treśc noty" + ss = IIf(IsNothing(wiersz.Cells.Item(KD.cDZKOpis).Value), " ", wiersz.Cells.Item(KD.cDZKOpis).Value) + s1 = AktualnyDokument.Substring(0, 2) + If s1 = "WZ" Or s1 = "WK" Or s1 = "RW" Or s1 = "PW" Then ss = tresc 'dla WZ/WZE/WZK/WKE, RW/RWK/PW/PWK opis pozycji taki sam jak treść noty + If DodajPozycjeNoty(Nr_ZapisuSrc, wiersz.Cells.Item(KD.cDataWyst).Value, + wiersz.Cells.Item(KD.cDataWyst).Value, + ss, nrdok) Then 'dodajpozycje noty + ZamknijNote(True) 'zamknij notę + System.Threading.Thread.Sleep(200) 'chwilkę poczekaj na SQL + 'oznacz dokument jako zaimportowany + sql = "update CDN.Dekrety Set DT_DataCentrali = datediff(s,'19900101', GetDate()) where DT_GIDNUmer = " & Str(Nr_ZapisuSrc) + SqlCmd(sql, SrcConn_str) + System.Threading.Thread.Sleep(200) 'chwilkę poczekaj na SQL + 'AktualnyDokument = "" + sql = "update CDN.MemNag set MEN_CechaOpis = '" + IIf(IsNothing(wiersz.Cells.Item(KD.cMagazyn).Value), "", wiersz.Cells.Item(KD.cMagazyn).Value) + "' " + sql += " where MEN_GIDNumer = " + CStr(GIDNumer) + SqlCmd(sql, DstConn_str) + System.Threading.Thread.Sleep(200) 'chwilkę poczekaj na SQL + Else + ZamknijNote(False) 'usuń utworzoną notę + AktualnyDokument = "" + End If + End If + Catch ex As System.Exception + ret = False + System.Windows.Forms.MessageBox.Show("ImportClick: " & ex.Message) + End Try + Else + listuj(CStr(Now) & "-> Dokument: " & wiersz.Cells.Item(2).Value & " już jest zaimportowany !!") + End If + Next + End If + Tylko_Listing = False + OdswiezDane() + End If + TcZakladki.SelectedTab = TpList + TpList.Select() + End If + End Sub + + Private Sub BtKonfig_Click(sender As Object, e As EventArgs) Handles BtKonfig.Click + dlgKonfig.ShowDialog() + End Sub + + Private Sub Timer_Tick(sender As Object, e As EventArgs) Handles Timer.Tick + Dim plik As String + + Timer.Stop() + My.Settings.Reload() + Try + plik = My.Settings.FolderR_Roboczy + "\ImportDM-" + Replace(Replace(Replace(Now, ":", "."), "/", "."), " ", "_") + ".LOG" + f_out = System.IO.File.CreateText(plik) + Tylko_Listing = False + Catch + Tylko_Listing = True + End Try + Timer.Enabled = False + Application.DoEvents() + If My.Settings.SerwerSrc > "" Then + SrcConn_str = zrob_polaczenie(My.Settings.SerwerSrc, My.Settings.BazaSrc, My.Settings.MCsrc, My.Settings.Comsrc) + Tamy_ImpDM_Src.Connection.ConnectionString = SrcConn_str + Tamy_ImpDM_Dekr.Connection.ConnectionString = SrcConn_str + Tamy_ImpDM_Konta.Connection.ConnectionString = SrcConn_str + SourceConnected = True + Tamy_ImpDM_Konta.Fill(Me.DsMain.Tbmy_ImpDM_Konta, Rok, Mies) + BsTbmyImpDMKonta.ResetBindings(False) + OdswiezDane() + End If + If My.Settings.SerwerKlucza > "" And My.Settings.BazaDst > "" Then PolaczBaze() + 'If Zalogowany Then OdswiezDane() + End Sub + + Private Sub BtUsunFlage_Click(sender As Object, e As EventArgs) Handles BtUsunFlage.Click + If DgvDokumenty.Rows.Count > 0 Then + If System.Windows.Forms.MessageBox.Show("Czy usunąć flagę z zaznaczonych dokumentów ?", "", MessageBoxButtons.YesNo) = DialogResult.Yes Then + Dim sql As String + Dim col As Integer + + col = DgvDokumenty.Columns("colDekret").Index + For Each wiersz In DgvDokumenty.SelectedRows + sql = "update CDN.Dekrety set DT_DataCentrali = 0 where DT_GIDNUmer = " & Str(wiersz.Cells(col).Value) + SqlCmd(sql, SrcConn_str) + Next + OdswiezDane() + End If + End If + End Sub + + Private Sub BtKoniec_Click(sender As Object, e As EventArgs) Handles BtKoniec.Click + Wyloguj() + If Not IsNothing(f_out) Then + f_out.Flush() + f_out.Close() + End If + Close() + End Sub + + Private Sub OdswiezDane() + Dim Konto As String + Dim ImpFl, pos As Integer + + If Not SourceConnected Then Return + + Konto = CbKonto.Text + ImpFl = 2 + If RbBlack.Checked Then ImpFl = 0 Else If RbRed.Checked Then ImpFl = 1 + + RM = CInt(CStr(Rok) & IIf(Mies < 10, "0", "") & CStr(Mies)) + If RM < 2001 Or Mies <= 0 Then Return + Try + lbUwaga.Visible = True + Application.DoEvents() + lbUwaga.BringToFront() + Application.DoEvents() + lbUwaga.Refresh() + Application.DoEvents() + pos = BsTbmy_ImpDM_Src.Position + Tamy_ImpDM_Src.Fill(Me.DsMain.Tbmy_ImpDM_Src, SpFlag, ZakFlag, WewFlag, RM, Rok, Mies, Konto, ImpFl) + If pos < BsTbmy_ImpDM_Src.Count Then BsTbmy_ImpDM_Src.Position = pos Else BsTbmy_ImpDM_Src.Position = BsTbmy_ImpDM_Src.Count - 1 + lbUwaga.Visible = False + lbUwaga.Invalidate() + Catch ex As System.Exception + lbUwaga.Visible = False + Application.DoEvents() + lbUwaga.Refresh() + Application.DoEvents() + System.Windows.Forms.MessageBox.Show(ex.Message) + End Try + End Sub + + Private Sub MainFrm_Load(sender As Object, e As EventArgs) Handles MyBase.Load + Dim spr As String + + SpFlag = 0 + ZakFlag = 0 + WewFlag = 0 + Rok = Year(Now) + Mies = Month(Now) + edRok.Value = Rok + CbMiesiac.SelectedIndex = Mies - 1 + CbMiesiac.Text = CbMiesiac.Items(CbMiesiac.SelectedIndex) + RbAll.Checked = True + CbKonto.Text = "" + spr = Encrypt(Environment.MachineName.ToUpper + Environment.UserName.ToUpper) + DecimalSep = NumberFormatInfo.CurrentInfo.NumberDecimalSeparator.ToString + DecimalGroupSep = NumberFormatInfo.CurrentInfo.NumberGroupSeparator.ToString + If spr <> My.Settings.check Then + MsgBox("Niezgodna konfiguracja. Ustaw od nowa") + My.Settings.SerwerSrc = "" + ' My.Settings.SerwerDst = "" + My.Settings.SerwerKlucza = "" + My.Settings.BazaSrc = "" + ' My.Settings.BazaDst = "" + My.Settings.FolderR_Roboczy = "" + My.Settings.MCsrc = "" + ' My.Settings.MCdst = "" + My.Settings.Comsrc = "" + ' My.Settings.Comdst = "" + My.Settings.check = spr + My.Settings.Save() + End If + Timer.Start() + End Sub + + Public Sub listuj(ByVal linia As String) + If linia > "" Then + LstWynik.Items.Add(linia) + + If Not Tylko_Listing Then + f_out.WriteLine(linia) + End If + If (LstWynik.Items.Count - 1) > 0 Then + LstWynik.TopIndex = Me.LstWynik.Items.Count - 1 + Else + LstWynik.TopIndex = 0 + End If + Application.DoEvents() + End If + End Sub + + Public Function SqlCmd(ByVal sql As String, conn_str As String) As Boolean + Dim wynik As Boolean + + wynik = False + Try + Using connection As New SqlClient.SqlConnection(conn_str) + Dim command As New SqlClient.SqlCommand(sql, connection) + connection.Open() + command.ExecuteNonQuery() + wynik = True + End Using + Catch ex As Exception + My.Forms.MainFrm.listuj(ex.Message) + End Try + Return (wynik) + End Function + + Public Function GetOneVal(ByVal sql As String, conn_str As String) As String + Dim val As String + + val = "" + Try + Using connection As New SqlClient.SqlConnection(conn_str) + Dim command As New SqlClient.SqlCommand(sql, connection) + connection.Open() + Dim reader As SqlClient.SqlDataReader = command.ExecuteReader() + While reader.Read() + If reader.IsDBNull(0) Then + val = "" + Else + val = CType(reader, IDataRecord)(0) + End If + End While + reader.Close() + End Using + Catch ex As Exception + My.Forms.MainFrm.listuj(ex.Message) + End Try + GetOneVal = val + End Function + +End Class diff --git a/ImportDokMag/My Project/Application.Designer.vb b/ImportDokMag/My Project/Application.Designer.vb new file mode 100644 index 0000000..3dfa0b5 --- /dev/null +++ b/ImportDokMag/My Project/Application.Designer.vb @@ -0,0 +1,44 @@ +'------------------------------------------------------------------------------ +' +' Ten kod został wygenerowany przez narzędzie. +' Wersja wykonawcza:4.0.30319.42000 +' +' Zmiany w tym pliku mogą spowodować nieprawidłowe zachowanie i zostaną utracone, jeśli +' kod zostanie ponownie wygenerowany. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + + +Namespace My + + 'UWAGA: Ten plik został wygenerowany automatycznie; nie należy go bezpośrednio modyfikować. Aby wprowadzić zmiany + ' lub jeśli napotkasz w tym pliku błędy kompilacji, przejdź do Projektanta projektu + ' (przejdź do obszaru Właściwości projektu lub kliknij dwukrotnie węzeł Mój Projekt w + ' Eksploratorze rozwiązań) i wprowadź zmiany na karcie Aplikacja. + ' + Partial Friend Class MyApplication + + _ + Public Sub New() + MyBase.New(Global.Microsoft.VisualBasic.ApplicationServices.AuthenticationMode.Windows) + Me.IsSingleInstance = false + Me.EnableVisualStyles = true + Me.SaveMySettingsOnExit = true + Me.ShutDownStyle = Global.Microsoft.VisualBasic.ApplicationServices.ShutdownMode.AfterMainFormCloses + End Sub + + _ + Protected Overrides Sub OnCreateMainForm() + Me.MainForm = Global.ImportDokMag.MainFrm + End Sub + + _ + Protected Overrides Function OnInitialize(ByVal commandLineArgs As System.Collections.ObjectModel.ReadOnlyCollection(Of String)) As Boolean + Me.MinimumSplashScreenDisplayTime = 0 + Return MyBase.OnInitialize(commandLineArgs) + End Function + End Class +End Namespace diff --git a/ImportDokMag/My Project/Application.myapp b/ImportDokMag/My Project/Application.myapp new file mode 100644 index 0000000..d0d7904 --- /dev/null +++ b/ImportDokMag/My Project/Application.myapp @@ -0,0 +1,10 @@ + + + true + MainFrm + false + 0 + true + 0 + true + \ No newline at end of file diff --git a/ImportDokMag/My Project/AssemblyInfo.vb b/ImportDokMag/My Project/AssemblyInfo.vb new file mode 100644 index 0000000..da34cf1 --- /dev/null +++ b/ImportDokMag/My Project/AssemblyInfo.vb @@ -0,0 +1,35 @@ +Imports System +Imports System.Reflection +Imports System.Runtime.InteropServices + +' Ogólne informacje o zestawie są kontrolowane poprzez następujący +' zestaw atrybutów. Zmień wartości tych atrybutów, aby zmodyfikować informacje +' powiązane z zestawem. + +' Sprawdź wartości atrybutów zestawu + + + + + + + + + + +'Następujący identyfikator GUID jest identyfikatorem biblioteki typów w przypadku udostępnienia tego projektu w modelu COM + + +' Informacje o wersji zestawu zawierają następujące cztery wartości: +' +' Wersja główna +' Wersja pomocnicza +' Numer kompilacji +' Rewizja +' +' Możesz określić wszystkie wartości lub użyć domyślnych numerów kompilacji i poprawki +' przy użyciu symbolu „*”, tak jak pokazano poniżej: +' + + + diff --git a/ImportDokMag/My Project/Resources.Designer.vb b/ImportDokMag/My Project/Resources.Designer.vb new file mode 100644 index 0000000..4b7bdb9 --- /dev/null +++ b/ImportDokMag/My Project/Resources.Designer.vb @@ -0,0 +1,63 @@ +'------------------------------------------------------------------------------ +' +' Ten kod został wygenerowany przez narzędzie. +' Wersja wykonawcza:4.0.30319.42000 +' +' Zmiany w tym pliku mogą spowodować nieprawidłowe zachowanie i zostaną utracone, jeśli +' kod zostanie ponownie wygenerowany. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + +Imports System + +Namespace My.Resources + + 'Ta klasa została automatycznie wygenerowana za pomocą klasy StronglyTypedResourceBuilder + 'przez narzędzie, takie jak ResGen lub Visual Studio. + 'Aby dodać lub usunąć składową, edytuj plik ResX, a następnie ponownie uruchom narzędzie ResGen + 'z opcją /str lub ponownie utwórz projekt VS. + ''' + ''' Klasa zasobu wymagająca zdefiniowania typu do wyszukiwania zlokalizowanych ciągów itd. + ''' + _ + Friend Module Resources + + Private resourceMan As Global.System.Resources.ResourceManager + + Private resourceCulture As Global.System.Globalization.CultureInfo + + ''' + '''Zwraca buforowane wystąpienie ResourceManager używane przez tę klasę. + ''' + _ + Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager + Get + If Object.ReferenceEquals(resourceMan, Nothing) Then + Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("ImportDokMag.Resources", GetType(Resources).Assembly) + resourceMan = temp + End If + Return resourceMan + End Get + End Property + + ''' + ''' Przesłania właściwość CurrentUICulture bieżącego wątku dla wszystkich + ''' przypadków przeszukiwania zasobów za pomocą tej klasy zasobów wymagającej zdefiniowania typu. + ''' + _ + Friend Property Culture() As Global.System.Globalization.CultureInfo + Get + Return resourceCulture + End Get + Set + resourceCulture = value + End Set + End Property + End Module +End Namespace diff --git a/ImportDokMag/My Project/Resources.resx b/ImportDokMag/My Project/Resources.resx new file mode 100644 index 0000000..af7dbeb --- /dev/null +++ b/ImportDokMag/My Project/Resources.resx @@ -0,0 +1,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/ImportDokMag/My Project/Settings.Designer.vb b/ImportDokMag/My Project/Settings.Designer.vb new file mode 100644 index 0000000..f636d3f --- /dev/null +++ b/ImportDokMag/My Project/Settings.Designer.vb @@ -0,0 +1,192 @@ +'------------------------------------------------------------------------------ +' +' Ten kod został wygenerowany przez narzędzie. +' Wersja wykonawcza:4.0.30319.42000 +' +' Zmiany w tym pliku mogą spowodować nieprawidłowe zachowanie i zostaną utracone, jeśli +' kod zostanie ponownie wygenerowany. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + + +Namespace My + + _ + Partial Friend NotInheritable Class MySettings + Inherits Global.System.Configuration.ApplicationSettingsBase + + Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings) + +#Region "Funkcje automatycznego zapisywania My.Settings" +#If _MyType = "WindowsForms" Then + Private Shared addedHandler As Boolean + + Private Shared addedHandlerLockObject As New Object + + _ + Private Shared Sub AutoSaveSettings(sender As Global.System.Object, e As Global.System.EventArgs) + If My.Application.SaveMySettingsOnExit Then + My.Settings.Save() + End If + End Sub +#End If +#End Region + + Public Shared ReadOnly Property [Default]() As MySettings + Get + +#If _MyType = "WindowsForms" Then + If Not addedHandler Then + SyncLock addedHandlerLockObject + If Not addedHandler Then + AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings + addedHandler = True + End If + End SyncLock + End If +#End If + Return defaultInstance + End Get + End Property + + _ + Public Property FolderR_Roboczy() As String + Get + Return CType(Me("FolderR_Roboczy"),String) + End Get + Set + Me("FolderR_Roboczy") = value + End Set + End Property + + _ + Public Property SerwerKlucza() As String + Get + Return CType(Me("SerwerKlucza"),String) + End Get + Set + Me("SerwerKlucza") = value + End Set + End Property + + _ + Public Property Seria() As String + Get + Return CType(Me("Seria"),String) + End Get + Set + Me("Seria") = value + End Set + End Property + + _ + Public Property SerwerSrc() As String + Get + Return CType(Me("SerwerSrc"),String) + End Get + Set + Me("SerwerSrc") = value + End Set + End Property + + _ + Public Property MCsrc() As String + Get + Return CType(Me("MCsrc"),String) + End Get + Set + Me("MCsrc") = value + End Set + End Property + + _ + Public Property Comsrc() As String + Get + Return CType(Me("Comsrc"),String) + End Get + Set + Me("Comsrc") = value + End Set + End Property + + _ + Public Property BazaSrc() As String + Get + Return CType(Me("BazaSrc"),String) + End Get + Set + Me("BazaSrc") = value + End Set + End Property + + _ + Public Property check() As String + Get + Return CType(Me("check"),String) + End Get + Set + Me("check") = value + End Set + End Property + + _ + Public Property BazaDst() As String + Get + Return CType(Me("BazaDst"),String) + End Get + Set + Me("BazaDst") = value + End Set + End Property + + _ + Public ReadOnly Property CS_Src() As String + Get + Return CType(Me("CS_Src"),String) + End Get + End Property + End Class +End Namespace + +Namespace My + + _ + Friend Module MySettingsProperty + + _ + Friend ReadOnly Property Settings() As Global.ImportDokMag.My.MySettings + Get + Return Global.ImportDokMag.My.MySettings.Default + End Get + End Property + End Module +End Namespace diff --git a/ImportDokMag/My Project/Settings.settings b/ImportDokMag/My Project/Settings.settings new file mode 100644 index 0000000..a229474 --- /dev/null +++ b/ImportDokMag/My Project/Settings.settings @@ -0,0 +1,41 @@ + + + + + + c:\temp + + + crispcl\erp + + + MAGJ + + + crispcl\erp + + + + + + + + + ERPXL_Test + + + + + + CDNXL_GOTEC_80_20210809 + + + <?xml version="1.0" encoding="utf-16"?> +<SerializableConnectionString xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <ConnectionString>Data Source=crispcl\erp;Initial Catalog=ERPXL_test;Integrated Security=True;TrustServerCertificate=True</ConnectionString> + <ProviderName>Microsoft.Data.SqlClient</ProviderName> +</SerializableConnectionString> + Data Source=crispcl\erp;Initial Catalog=ERPXL_test;Integrated Security=True;TrustServerCertificate=True + + + \ No newline at end of file diff --git a/ImportDokMag/cab.ico b/ImportDokMag/cab.ico new file mode 100644 index 0000000000000000000000000000000000000000..c66ec3a9c10baaa17b0503d548558530f59d031e GIT binary patch literal 22498 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 A+5i9m literal 0 HcmV?d00001 diff --git a/ImportDokMag/dlgKonfig.Designer.vb b/ImportDokMag/dlgKonfig.Designer.vb new file mode 100644 index 0000000..9160e07 --- /dev/null +++ b/ImportDokMag/dlgKonfig.Designer.vb @@ -0,0 +1,416 @@ + _ +Partial Class dlgKonfig + Inherits System.Windows.Forms.Form + + 'Formularz przesłania metodę dispose, aby wyczyścić listę składników. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wymagane przez Projektanta formularzy systemu Windows + Private components As System.ComponentModel.IContainer + + 'UWAGA: następująca procedura jest wymagana przez Projektanta formularzy systemu Windows + 'Możesz to modyfikować, używając Projektanta formularzy systemu Windows. + 'Nie należy modyfikować za pomocą edytora kodu. + _ + Private Sub InitializeComponent() + Me.TableLayoutPanel1 = New System.Windows.Forms.TableLayoutPanel() + Me.OK_Button = New System.Windows.Forms.Button() + Me.Cancel_Button = New System.Windows.Forms.Button() + Me.TableLayoutPanel2 = New System.Windows.Forms.TableLayoutPanel() + Me.TableLayoutPanel4 = New System.Windows.Forms.TableLayoutPanel() + Me.Label6 = New System.Windows.Forms.Label() + Me.Label13 = New System.Windows.Forms.Label() + Me.EdSeria = New System.Windows.Forms.TextBox() + Me.Label7 = New System.Windows.Forms.Label() + Me.edBazaDst = New System.Windows.Forms.TextBox() + Me.TableLayoutPanel3 = New System.Windows.Forms.TableLayoutPanel() + Me.Label1 = New System.Windows.Forms.Label() + Me.Label2 = New System.Windows.Forms.Label() + Me.Label3 = New System.Windows.Forms.Label() + Me.Label4 = New System.Windows.Forms.Label() + Me.Label5 = New System.Windows.Forms.Label() + Me.edSerwerSrc = New System.Windows.Forms.TextBox() + Me.edBazaSrc = New System.Windows.Forms.TextBox() + Me.edUserSrc = New System.Windows.Forms.TextBox() + Me.edPassSrc = New System.Windows.Forms.TextBox() + Me.TableLayoutPanel5 = New System.Windows.Forms.TableLayoutPanel() + Me.Label11 = New System.Windows.Forms.Label() + Me.Label12 = New System.Windows.Forms.Label() + Me.edHASPServer = New System.Windows.Forms.TextBox() + Me.edWorkingDir = New System.Windows.Forms.TextBox() + Me.TableLayoutPanel1.SuspendLayout() + Me.TableLayoutPanel2.SuspendLayout() + Me.TableLayoutPanel4.SuspendLayout() + Me.TableLayoutPanel3.SuspendLayout() + Me.TableLayoutPanel5.SuspendLayout() + Me.SuspendLayout() + ' + 'TableLayoutPanel1 + ' + Me.TableLayoutPanel1.ColumnCount = 2 + Me.TableLayoutPanel1.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50.0!)) + Me.TableLayoutPanel1.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50.0!)) + Me.TableLayoutPanel1.Controls.Add(Me.OK_Button, 0, 0) + Me.TableLayoutPanel1.Controls.Add(Me.Cancel_Button, 1, 0) + Me.TableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill + Me.TableLayoutPanel1.Location = New System.Drawing.Point(288, 305) + Me.TableLayoutPanel1.Name = "TableLayoutPanel1" + Me.TableLayoutPanel1.RowCount = 1 + Me.TableLayoutPanel1.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50.0!)) + Me.TableLayoutPanel1.Size = New System.Drawing.Size(144, 32) + Me.TableLayoutPanel1.TabIndex = 0 + ' + 'OK_Button + ' + Me.OK_Button.Anchor = System.Windows.Forms.AnchorStyles.None + Me.OK_Button.Location = New System.Drawing.Point(3, 4) + Me.OK_Button.Name = "OK_Button" + Me.OK_Button.Size = New System.Drawing.Size(66, 23) + Me.OK_Button.TabIndex = 0 + Me.OK_Button.Text = "OK" + ' + 'Cancel_Button + ' + Me.Cancel_Button.Anchor = System.Windows.Forms.AnchorStyles.None + Me.Cancel_Button.DialogResult = System.Windows.Forms.DialogResult.Cancel + Me.Cancel_Button.Location = New System.Drawing.Point(75, 4) + Me.Cancel_Button.Name = "Cancel_Button" + Me.Cancel_Button.Size = New System.Drawing.Size(66, 23) + Me.Cancel_Button.TabIndex = 1 + Me.Cancel_Button.Text = "Anuluj" + ' + 'TableLayoutPanel2 + ' + Me.TableLayoutPanel2.ColumnCount = 3 + Me.TableLayoutPanel2.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50.0!)) + Me.TableLayoutPanel2.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 135.0!)) + Me.TableLayoutPanel2.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50.0!)) + Me.TableLayoutPanel2.Controls.Add(Me.TableLayoutPanel4, 0, 1) + Me.TableLayoutPanel2.Controls.Add(Me.TableLayoutPanel1, 2, 3) + Me.TableLayoutPanel2.Controls.Add(Me.TableLayoutPanel3, 0, 0) + Me.TableLayoutPanel2.Controls.Add(Me.TableLayoutPanel5, 0, 2) + Me.TableLayoutPanel2.Dock = System.Windows.Forms.DockStyle.Fill + Me.TableLayoutPanel2.Location = New System.Drawing.Point(0, 0) + Me.TableLayoutPanel2.Name = "TableLayoutPanel2" + Me.TableLayoutPanel2.RowCount = 4 + Me.TableLayoutPanel2.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!)) + Me.TableLayoutPanel2.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 93.0!)) + Me.TableLayoutPanel2.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 59.0!)) + Me.TableLayoutPanel2.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 38.0!)) + Me.TableLayoutPanel2.Size = New System.Drawing.Size(435, 340) + Me.TableLayoutPanel2.TabIndex = 1 + ' + 'TableLayoutPanel4 + ' + Me.TableLayoutPanel4.CellBorderStyle = System.Windows.Forms.TableLayoutPanelCellBorderStyle.Inset + Me.TableLayoutPanel4.ColumnCount = 4 + Me.TableLayoutPanel2.SetColumnSpan(Me.TableLayoutPanel4, 3) + Me.TableLayoutPanel4.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 20.0!)) + Me.TableLayoutPanel4.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50.0!)) + Me.TableLayoutPanel4.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50.0!)) + Me.TableLayoutPanel4.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 35.0!)) + Me.TableLayoutPanel4.Controls.Add(Me.Label6, 0, 0) + Me.TableLayoutPanel4.Controls.Add(Me.Label13, 1, 2) + Me.TableLayoutPanel4.Controls.Add(Me.EdSeria, 2, 2) + Me.TableLayoutPanel4.Controls.Add(Me.Label7, 1, 1) + Me.TableLayoutPanel4.Controls.Add(Me.edBazaDst, 2, 1) + Me.TableLayoutPanel4.Dock = System.Windows.Forms.DockStyle.Fill + Me.TableLayoutPanel4.Location = New System.Drawing.Point(3, 153) + Me.TableLayoutPanel4.Name = "TableLayoutPanel4" + Me.TableLayoutPanel4.RowCount = 3 + Me.TableLayoutPanel4.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33333!)) + Me.TableLayoutPanel4.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33333!)) + Me.TableLayoutPanel4.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33333!)) + Me.TableLayoutPanel4.Size = New System.Drawing.Size(429, 87) + Me.TableLayoutPanel4.TabIndex = 2 + ' + 'Label6 + ' + Me.Label6.AutoSize = True + Me.TableLayoutPanel4.SetColumnSpan(Me.Label6, 4) + Me.Label6.Dock = System.Windows.Forms.DockStyle.Fill + Me.Label6.Location = New System.Drawing.Point(5, 2) + Me.Label6.Name = "Label6" + Me.Label6.Size = New System.Drawing.Size(419, 26) + Me.Label6.TabIndex = 0 + Me.Label6.Text = "Baza docelowa" + Me.Label6.TextAlign = System.Drawing.ContentAlignment.MiddleCenter + ' + 'Label13 + ' + Me.Label13.AutoSize = True + Me.Label13.Dock = System.Windows.Forms.DockStyle.Fill + Me.Label13.Location = New System.Drawing.Point(27, 58) + Me.Label13.Name = "Label13" + Me.Label13.Size = New System.Drawing.Size(176, 27) + Me.Label13.TabIndex = 9 + Me.Label13.Text = "Seria noty" + Me.Label13.TextAlign = System.Drawing.ContentAlignment.MiddleCenter + ' + 'EdSeria + ' + Me.EdSeria.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ + Or System.Windows.Forms.AnchorStyles.Left) _ + Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.EdSeria.Location = New System.Drawing.Point(211, 61) + Me.EdSeria.Name = "EdSeria" + Me.EdSeria.Size = New System.Drawing.Size(176, 20) + Me.EdSeria.TabIndex = 10 + ' + 'Label7 + ' + Me.Label7.AutoSize = True + Me.Label7.Dock = System.Windows.Forms.DockStyle.Fill + Me.Label7.Location = New System.Drawing.Point(27, 30) + Me.Label7.Name = "Label7" + Me.Label7.Size = New System.Drawing.Size(176, 26) + Me.Label7.TabIndex = 11 + Me.Label7.Text = "Nazwa bazy" + Me.Label7.TextAlign = System.Drawing.ContentAlignment.MiddleCenter + ' + 'edBazaDst + ' + Me.edBazaDst.Dock = System.Windows.Forms.DockStyle.Fill + Me.edBazaDst.Location = New System.Drawing.Point(211, 33) + Me.edBazaDst.Name = "edBazaDst" + Me.edBazaDst.Size = New System.Drawing.Size(176, 20) + Me.edBazaDst.TabIndex = 12 + ' + 'TableLayoutPanel3 + ' + Me.TableLayoutPanel3.CellBorderStyle = System.Windows.Forms.TableLayoutPanelCellBorderStyle.Inset + Me.TableLayoutPanel3.ColumnCount = 4 + Me.TableLayoutPanel2.SetColumnSpan(Me.TableLayoutPanel3, 3) + Me.TableLayoutPanel3.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 20.0!)) + Me.TableLayoutPanel3.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50.0!)) + Me.TableLayoutPanel3.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50.0!)) + Me.TableLayoutPanel3.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 35.0!)) + Me.TableLayoutPanel3.Controls.Add(Me.Label1, 0, 0) + Me.TableLayoutPanel3.Controls.Add(Me.Label2, 1, 1) + Me.TableLayoutPanel3.Controls.Add(Me.Label3, 1, 2) + Me.TableLayoutPanel3.Controls.Add(Me.Label4, 1, 3) + Me.TableLayoutPanel3.Controls.Add(Me.Label5, 1, 4) + Me.TableLayoutPanel3.Controls.Add(Me.edSerwerSrc, 2, 1) + Me.TableLayoutPanel3.Controls.Add(Me.edBazaSrc, 2, 2) + Me.TableLayoutPanel3.Controls.Add(Me.edUserSrc, 2, 3) + Me.TableLayoutPanel3.Controls.Add(Me.edPassSrc, 2, 4) + Me.TableLayoutPanel3.Dock = System.Windows.Forms.DockStyle.Fill + Me.TableLayoutPanel3.Location = New System.Drawing.Point(3, 3) + Me.TableLayoutPanel3.Name = "TableLayoutPanel3" + Me.TableLayoutPanel3.RowCount = 5 + Me.TableLayoutPanel3.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 20.0!)) + Me.TableLayoutPanel3.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 20.0!)) + Me.TableLayoutPanel3.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 20.0!)) + Me.TableLayoutPanel3.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 20.0!)) + Me.TableLayoutPanel3.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 20.0!)) + Me.TableLayoutPanel3.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20.0!)) + Me.TableLayoutPanel3.Size = New System.Drawing.Size(429, 144) + Me.TableLayoutPanel3.TabIndex = 1 + ' + 'Label1 + ' + Me.Label1.AutoSize = True + Me.TableLayoutPanel3.SetColumnSpan(Me.Label1, 4) + Me.Label1.Dock = System.Windows.Forms.DockStyle.Fill + Me.Label1.Location = New System.Drawing.Point(5, 2) + Me.Label1.Name = "Label1" + Me.Label1.Size = New System.Drawing.Size(419, 26) + Me.Label1.TabIndex = 0 + Me.Label1.Text = "Połączenie do bazy źródłowej" + Me.Label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter + ' + 'Label2 + ' + Me.Label2.Dock = System.Windows.Forms.DockStyle.Fill + Me.Label2.Location = New System.Drawing.Point(27, 30) + Me.Label2.Name = "Label2" + Me.Label2.Size = New System.Drawing.Size(176, 26) + Me.Label2.TabIndex = 1 + Me.Label2.Text = "Serwer SQL" + Me.Label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter + ' + 'Label3 + ' + Me.Label3.AutoSize = True + Me.Label3.Dock = System.Windows.Forms.DockStyle.Fill + Me.Label3.Location = New System.Drawing.Point(27, 58) + Me.Label3.Name = "Label3" + Me.Label3.Size = New System.Drawing.Size(176, 26) + Me.Label3.TabIndex = 2 + Me.Label3.Text = "baza danych" + Me.Label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter + ' + 'Label4 + ' + Me.Label4.Dock = System.Windows.Forms.DockStyle.Fill + Me.Label4.Location = New System.Drawing.Point(27, 86) + Me.Label4.Name = "Label4" + Me.Label4.Size = New System.Drawing.Size(176, 26) + Me.Label4.TabIndex = 3 + Me.Label4.Text = "użytkownik" + Me.Label4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter + ' + 'Label5 + ' + Me.Label5.Dock = System.Windows.Forms.DockStyle.Fill + Me.Label5.Location = New System.Drawing.Point(27, 114) + Me.Label5.Name = "Label5" + Me.Label5.Size = New System.Drawing.Size(176, 28) + Me.Label5.TabIndex = 4 + Me.Label5.Text = "hasło" + Me.Label5.TextAlign = System.Drawing.ContentAlignment.MiddleCenter + ' + 'edSerwerSrc + ' + Me.edSerwerSrc.Dock = System.Windows.Forms.DockStyle.Fill + Me.edSerwerSrc.Location = New System.Drawing.Point(211, 33) + Me.edSerwerSrc.Name = "edSerwerSrc" + Me.edSerwerSrc.Size = New System.Drawing.Size(176, 20) + Me.edSerwerSrc.TabIndex = 5 + ' + 'edBazaSrc + ' + Me.edBazaSrc.Dock = System.Windows.Forms.DockStyle.Fill + Me.edBazaSrc.Location = New System.Drawing.Point(211, 61) + Me.edBazaSrc.Name = "edBazaSrc" + Me.edBazaSrc.Size = New System.Drawing.Size(176, 20) + Me.edBazaSrc.TabIndex = 6 + ' + 'edUserSrc + ' + Me.edUserSrc.Dock = System.Windows.Forms.DockStyle.Fill + Me.edUserSrc.Location = New System.Drawing.Point(211, 89) + Me.edUserSrc.Name = "edUserSrc" + Me.edUserSrc.Size = New System.Drawing.Size(176, 20) + Me.edUserSrc.TabIndex = 7 + Me.edUserSrc.UseSystemPasswordChar = True + ' + 'edPassSrc + ' + Me.edPassSrc.Dock = System.Windows.Forms.DockStyle.Fill + Me.edPassSrc.Location = New System.Drawing.Point(211, 117) + Me.edPassSrc.Name = "edPassSrc" + Me.edPassSrc.Size = New System.Drawing.Size(176, 20) + Me.edPassSrc.TabIndex = 8 + Me.edPassSrc.UseSystemPasswordChar = True + ' + 'TableLayoutPanel5 + ' + Me.TableLayoutPanel5.ColumnCount = 2 + Me.TableLayoutPanel2.SetColumnSpan(Me.TableLayoutPanel5, 2) + Me.TableLayoutPanel5.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 32.61649!)) + Me.TableLayoutPanel5.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 67.38351!)) + Me.TableLayoutPanel5.Controls.Add(Me.Label11, 0, 0) + Me.TableLayoutPanel5.Controls.Add(Me.Label12, 0, 1) + Me.TableLayoutPanel5.Controls.Add(Me.edHASPServer, 1, 0) + Me.TableLayoutPanel5.Controls.Add(Me.edWorkingDir, 1, 1) + Me.TableLayoutPanel5.Dock = System.Windows.Forms.DockStyle.Fill + Me.TableLayoutPanel5.Location = New System.Drawing.Point(3, 246) + Me.TableLayoutPanel5.Name = "TableLayoutPanel5" + Me.TableLayoutPanel5.RowCount = 2 + Me.TableLayoutPanel5.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50.0!)) + Me.TableLayoutPanel5.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50.0!)) + Me.TableLayoutPanel5.Size = New System.Drawing.Size(279, 53) + Me.TableLayoutPanel5.TabIndex = 3 + ' + 'Label11 + ' + Me.Label11.AutoSize = True + Me.Label11.Dock = System.Windows.Forms.DockStyle.Fill + Me.Label11.Location = New System.Drawing.Point(3, 0) + Me.Label11.Name = "Label11" + Me.Label11.Size = New System.Drawing.Size(85, 26) + Me.Label11.TabIndex = 0 + Me.Label11.Text = "Serwer klucza" + Me.Label11.TextAlign = System.Drawing.ContentAlignment.MiddleRight + ' + 'Label12 + ' + Me.Label12.AutoSize = True + Me.Label12.Dock = System.Windows.Forms.DockStyle.Fill + Me.Label12.Location = New System.Drawing.Point(3, 26) + Me.Label12.Name = "Label12" + Me.Label12.Size = New System.Drawing.Size(85, 27) + Me.Label12.TabIndex = 1 + Me.Label12.Text = "Katalog roboczy" + Me.Label12.TextAlign = System.Drawing.ContentAlignment.MiddleRight + ' + 'edHASPServer + ' + Me.edHASPServer.Dock = System.Windows.Forms.DockStyle.Fill + Me.edHASPServer.Location = New System.Drawing.Point(94, 3) + Me.edHASPServer.Name = "edHASPServer" + Me.edHASPServer.Size = New System.Drawing.Size(182, 20) + Me.edHASPServer.TabIndex = 2 + Me.edHASPServer.TextAlign = System.Windows.Forms.HorizontalAlignment.Right + ' + 'edWorkingDir + ' + Me.edWorkingDir.Dock = System.Windows.Forms.DockStyle.Fill + Me.edWorkingDir.Location = New System.Drawing.Point(94, 29) + Me.edWorkingDir.Name = "edWorkingDir" + Me.edWorkingDir.Size = New System.Drawing.Size(182, 20) + Me.edWorkingDir.TabIndex = 3 + Me.edWorkingDir.TextAlign = System.Windows.Forms.HorizontalAlignment.Right + ' + 'dlgKonfig + ' + Me.AcceptButton = Me.OK_Button + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.CancelButton = Me.Cancel_Button + Me.ClientSize = New System.Drawing.Size(435, 340) + Me.Controls.Add(Me.TableLayoutPanel2) + Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog + Me.MaximizeBox = False + Me.MinimizeBox = False + Me.Name = "dlgKonfig" + Me.ShowInTaskbar = False + Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent + Me.Text = "Konfiguracja programu" + Me.TableLayoutPanel1.ResumeLayout(False) + Me.TableLayoutPanel2.ResumeLayout(False) + Me.TableLayoutPanel4.ResumeLayout(False) + Me.TableLayoutPanel4.PerformLayout() + Me.TableLayoutPanel3.ResumeLayout(False) + Me.TableLayoutPanel3.PerformLayout() + Me.TableLayoutPanel5.ResumeLayout(False) + Me.TableLayoutPanel5.PerformLayout() + Me.ResumeLayout(False) + + End Sub + Friend WithEvents TableLayoutPanel1 As System.Windows.Forms.TableLayoutPanel + Friend WithEvents OK_Button As System.Windows.Forms.Button + Friend WithEvents Cancel_Button As System.Windows.Forms.Button + Friend WithEvents TableLayoutPanel2 As TableLayoutPanel + Friend WithEvents TableLayoutPanel3 As TableLayoutPanel + Friend WithEvents Label1 As Label + Friend WithEvents Label2 As Label + Friend WithEvents Label3 As Label + Friend WithEvents Label4 As Label + Friend WithEvents Label5 As Label + Friend WithEvents edSerwerSrc As TextBox + Friend WithEvents edBazaSrc As TextBox + Friend WithEvents edUserSrc As TextBox + Friend WithEvents edPassSrc As TextBox + Friend WithEvents TableLayoutPanel4 As TableLayoutPanel + Friend WithEvents Label6 As Label + Friend WithEvents TableLayoutPanel5 As TableLayoutPanel + Friend WithEvents Label11 As Label + Friend WithEvents Label12 As Label + Friend WithEvents edHASPServer As TextBox + Friend WithEvents edWorkingDir As TextBox + Friend WithEvents Label13 As Label + Friend WithEvents EdSeria As TextBox + Friend WithEvents Label7 As Label + Friend WithEvents edBazaDst As TextBox +End Class diff --git a/ImportDokMag/dlgKonfig.resx b/ImportDokMag/dlgKonfig.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/ImportDokMag/dlgKonfig.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/ImportDokMag/dlgKonfig.vb b/ImportDokMag/dlgKonfig.vb new file mode 100644 index 0000000..e5b9fc4 --- /dev/null +++ b/ImportDokMag/dlgKonfig.vb @@ -0,0 +1,44 @@ +Imports System.Windows.Forms + +Public Class dlgKonfig + Public Check As String + + Private Sub OK_Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK_Button.Click + Me.DialogResult = System.Windows.Forms.DialogResult.OK + My.Settings.SerwerSrc = edSerwerSrc.Text + ' My.Settings.SerwerDst = edServerDst.Text + My.Settings.SerwerKlucza = edHASPServer.Text + My.Settings.BazaSrc = edBazaSrc.Text + My.Settings.BazaDst = edBazaDst.Text + My.Settings.Seria = EdSeria.Text + My.Settings.FolderR_Roboczy = edWorkingDir.Text + My.Settings.MCsrc = MainFrm.Encrypt(edUserSrc.Text) + ' My.Settings.MCdst = MainFrm.Encrypt(edUserDst.Text) + My.Settings.Comsrc = MainFrm.Encrypt(edPassSrc.Text) + ' My.Settings.Comdst = MainFrm.Encrypt(edPassDst.Text) + My.Settings.check = MainFrm.Encrypt(Environment.MachineName.ToUpper + Environment.UserName.ToUpper) + My.Settings.Save() + MsgBox("Zakończ program i uruchom ponownie.") + Me.Close() + End Sub + + Private Sub Cancel_Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Cancel_Button.Click + Me.DialogResult = System.Windows.Forms.DialogResult.Cancel + Me.Close() + End Sub + + Private Sub dlgKonfig_Load(sender As Object, e As EventArgs) Handles MyBase.Load + edSerwerSrc.Text = My.Settings.SerwerSrc + ' edServerDst.Text = My.Settings.SerwerDst + edHASPServer.Text = My.Settings.SerwerKlucza + edBazaSrc.Text = My.Settings.BazaSrc + edBazaDst.Text = My.Settings.BazaDst + EdSeria.Text = My.Settings.Seria + edWorkingDir.Text = My.Settings.FolderR_Roboczy + edUserSrc.Text = MainFrm.Decrypt(My.Settings.MCsrc) + ' edUserDst.Text = MainFrm.Decrypt(My.Settings.MCdst) + edPassSrc.Text = MainFrm.Decrypt(My.Settings.Comsrc) + ' edPassDst.Text = MainFrm.Decrypt(My.Settings.Comdst) + + End Sub +End Class diff --git a/Instalator/Instalator.vdproj b/Instalator/Instalator.vdproj new file mode 100644 index 0000000..214cb2a --- /dev/null +++ b/Instalator/Instalator.vdproj @@ -0,0 +1,2796 @@ +"DeployProject" +{ +"VSVersion" = "3:800" +"ProjectType" = "8:{978C614F-708E-4E1A-B201-565925725DBA}" +"IsWebType" = "8:FALSE" +"ProjectName" = "8:Instalator" +"LanguageId" = "3:1045" +"CodePage" = "3:1250" +"UILanguageId" = "3:1045" +"SccProjectName" = "8:" +"SccLocalPath" = "8:" +"SccAuxPath" = "8:" +"SccProvider" = "8:" +"BackwardsCompatibleGUIDGeneration" = "8:TRUE" + "Hierarchy" + { + "Entry" + { + "MsmKey" = "8:_064E799438ACB76CE32EDBCDD4283BC8" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_115712F578D9EBB3109B94958D677211" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_13C335171777659196A395DA0A9C1040" + "OwnerKey" = "8:_47B034E1418C8B9327CB9EDE397D5FD6" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_13C335171777659196A395DA0A9C1040" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_1B43F574460893EFC4119FB063720BA9" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_1B43F574460893EFC4119FB063720BA9" + "OwnerKey" = "8:_F702FBF72E8E3900A9D8153F0B8FF231" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_3782AF8405A8F8B7E4D5665D14470170" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_4111B82A2AD53B23423B43D2CF8EEF93" + "OwnerKey" = "8:_E8FD10C3E19EFF21CDD745EC0EA7C70C" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_4111B82A2AD53B23423B43D2CF8EEF93" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_4111B82A2AD53B23423B43D2CF8EEF93" + "OwnerKey" = "8:_064E799438ACB76CE32EDBCDD4283BC8" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_4111B82A2AD53B23423B43D2CF8EEF93" + "OwnerKey" = "8:_F702FBF72E8E3900A9D8153F0B8FF231" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_411A37065770F1244C75CBA4DB352BE4" + "OwnerKey" = "8:_89DD098843E9FB331C28376DD54FEE27" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_411A37065770F1244C75CBA4DB352BE4" + "OwnerKey" = "8:_F49D69E31015218F391D16CD99C7495C" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_44EA96E53084B60E9A4070388EEF7E35" + "OwnerKey" = "8:_F49D69E31015218F391D16CD99C7495C" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_44EA96E53084B60E9A4070388EEF7E35" + "OwnerKey" = "8:_679D819A2BD96F43DE73BEC8F5B9140B" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_44EA96E53084B60E9A4070388EEF7E35" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_47B034E1418C8B9327CB9EDE397D5FD6" + "OwnerKey" = "8:_064E799438ACB76CE32EDBCDD4283BC8" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_47B034E1418C8B9327CB9EDE397D5FD6" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_49788B1BF43C40538D55DF85500AFDB9" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_4F705D33472964DCD62BF97373D5911C" + "OwnerKey" = "8:_E8FD10C3E19EFF21CDD745EC0EA7C70C" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_4F705D33472964DCD62BF97373D5911C" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_5E2B82D9FCB94C1861BE361B63AAE81A" + "OwnerKey" = "8:_E8FD10C3E19EFF21CDD745EC0EA7C70C" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_5E2B82D9FCB94C1861BE361B63AAE81A" + "OwnerKey" = "8:_F702FBF72E8E3900A9D8153F0B8FF231" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_5E2B82D9FCB94C1861BE361B63AAE81A" + "OwnerKey" = "8:_4F705D33472964DCD62BF97373D5911C" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_5E2B82D9FCB94C1861BE361B63AAE81A" + "OwnerKey" = "8:_064E799438ACB76CE32EDBCDD4283BC8" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_5E2B82D9FCB94C1861BE361B63AAE81A" + "OwnerKey" = "8:_5F23C5FF65182F0DBB838CC1247B3270" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_5E2B82D9FCB94C1861BE361B63AAE81A" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_5E2B82D9FCB94C1861BE361B63AAE81A" + "OwnerKey" = "8:_7522A064999CC648FF409B5F21E46D09" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_5E2B82D9FCB94C1861BE361B63AAE81A" + "OwnerKey" = "8:_FE4506DB300A9C40126C69A365B6606D" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_5ED72FC4ACDAE7178194246A390B312D" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_5ED72FC4ACDAE7178194246A390B312D" + "OwnerKey" = "8:_8AF6DD6F977158202394A251C107BA59" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_5F23C5FF65182F0DBB838CC1247B3270" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_5F23C5FF65182F0DBB838CC1247B3270" + "OwnerKey" = "8:_F702FBF72E8E3900A9D8153F0B8FF231" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_5F23C5FF65182F0DBB838CC1247B3270" + "OwnerKey" = "8:_064E799438ACB76CE32EDBCDD4283BC8" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_679D819A2BD96F43DE73BEC8F5B9140B" + "OwnerKey" = "8:_5ED72FC4ACDAE7178194246A390B312D" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_679D819A2BD96F43DE73BEC8F5B9140B" + "OwnerKey" = "8:_8AF6DD6F977158202394A251C107BA59" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_679D819A2BD96F43DE73BEC8F5B9140B" + "OwnerKey" = "8:_EF722D653CB3B1A62A5ACCE81FA7D2CE" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_679D819A2BD96F43DE73BEC8F5B9140B" + "OwnerKey" = "8:_115712F578D9EBB3109B94958D677211" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_679D819A2BD96F43DE73BEC8F5B9140B" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_679D819A2BD96F43DE73BEC8F5B9140B" + "OwnerKey" = "8:_7522A064999CC648FF409B5F21E46D09" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_6A4ADB4AD6EF61BB966B81F68B6964E8" + "OwnerKey" = "8:_E8FD10C3E19EFF21CDD745EC0EA7C70C" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_6A4ADB4AD6EF61BB966B81F68B6964E8" + "OwnerKey" = "8:_064E799438ACB76CE32EDBCDD4283BC8" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_6A4ADB4AD6EF61BB966B81F68B6964E8" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_6A4ADB4AD6EF61BB966B81F68B6964E8" + "OwnerKey" = "8:_F49D69E31015218F391D16CD99C7495C" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_7522A064999CC648FF409B5F21E46D09" + "OwnerKey" = "8:_5ED72FC4ACDAE7178194246A390B312D" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_7522A064999CC648FF409B5F21E46D09" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_7522A064999CC648FF409B5F21E46D09" + "OwnerKey" = "8:_8AF6DD6F977158202394A251C107BA59" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_7522A064999CC648FF409B5F21E46D09" + "OwnerKey" = "8:_115712F578D9EBB3109B94958D677211" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_7522A064999CC648FF409B5F21E46D09" + "OwnerKey" = "8:_EF722D653CB3B1A62A5ACCE81FA7D2CE" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_89DD098843E9FB331C28376DD54FEE27" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_89DD098843E9FB331C28376DD54FEE27" + "OwnerKey" = "8:_47B034E1418C8B9327CB9EDE397D5FD6" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_89DD098843E9FB331C28376DD54FEE27" + "OwnerKey" = "8:_064E799438ACB76CE32EDBCDD4283BC8" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_89DD098843E9FB331C28376DD54FEE27" + "OwnerKey" = "8:_4F705D33472964DCD62BF97373D5911C" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_8AF6DD6F977158202394A251C107BA59" + "OwnerKey" = "8:_115712F578D9EBB3109B94958D677211" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_8AF6DD6F977158202394A251C107BA59" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_960E2CC7274B69BABC6941BC8B8975C1" + "OwnerKey" = "8:_6A4ADB4AD6EF61BB966B81F68B6964E8" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_960E2CC7274B69BABC6941BC8B8975C1" + "OwnerKey" = "8:_FE4506DB300A9C40126C69A365B6606D" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_960E2CC7274B69BABC6941BC8B8975C1" + "OwnerKey" = "8:_F702FBF72E8E3900A9D8153F0B8FF231" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_960E2CC7274B69BABC6941BC8B8975C1" + "OwnerKey" = "8:_CE8725025FF66F1B1977929CE1079E8B" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_960E2CC7274B69BABC6941BC8B8975C1" + "OwnerKey" = "8:_5F23C5FF65182F0DBB838CC1247B3270" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_960E2CC7274B69BABC6941BC8B8975C1" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_99BACB5324A8434F781E8D4D10A7EDC7" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_99BACB5324A8434F781E8D4D10A7EDC7" + "OwnerKey" = "8:_47B034E1418C8B9327CB9EDE397D5FD6" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_A006D997702F0219515F49E02EF5518D" + "OwnerKey" = "8:_A05113AD6289413349425368468DB5CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_A006D997702F0219515F49E02EF5518D" + "OwnerKey" = "8:_89DD098843E9FB331C28376DD54FEE27" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_A05113AD6289413349425368468DB5CF" + "OwnerKey" = "8:_89DD098843E9FB331C28376DD54FEE27" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_B50D2122F2FB80D196B3238B13DB49A2" + "OwnerKey" = "8:_47B034E1418C8B9327CB9EDE397D5FD6" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_B50D2122F2FB80D196B3238B13DB49A2" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_C18FF9DC675151BE9403FEBC6CD17C29" + "OwnerKey" = "8:_89DD098843E9FB331C28376DD54FEE27" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_C27DF94F2011639452C2601FDD323D9C" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_C27DF94F2011639452C2601FDD323D9C" + "OwnerKey" = "8:_EF722D653CB3B1A62A5ACCE81FA7D2CE" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_C27DF94F2011639452C2601FDD323D9C" + "OwnerKey" = "8:_115712F578D9EBB3109B94958D677211" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_C27DF94F2011639452C2601FDD323D9C" + "OwnerKey" = "8:_679D819A2BD96F43DE73BEC8F5B9140B" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_C27DF94F2011639452C2601FDD323D9C" + "OwnerKey" = "8:_E8FD10C3E19EFF21CDD745EC0EA7C70C" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_C6055B8970CE231F0F157DB3AA184D47" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_C6F5AAEFEFAD0E4D78974661C54FD887" + "OwnerKey" = "8:_4F705D33472964DCD62BF97373D5911C" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_C6F5AAEFEFAD0E4D78974661C54FD887" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_C6F5AAEFEFAD0E4D78974661C54FD887" + "OwnerKey" = "8:_064E799438ACB76CE32EDBCDD4283BC8" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_C6F5AAEFEFAD0E4D78974661C54FD887" + "OwnerKey" = "8:_E8FD10C3E19EFF21CDD745EC0EA7C70C" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_C9CF83DB989FE3AAFD0EE8045A16B62F" + "OwnerKey" = "8:_064E799438ACB76CE32EDBCDD4283BC8" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_C9CF83DB989FE3AAFD0EE8045A16B62F" + "OwnerKey" = "8:_47B034E1418C8B9327CB9EDE397D5FD6" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_C9CF83DB989FE3AAFD0EE8045A16B62F" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_CE8725025FF66F1B1977929CE1079E8B" + "OwnerKey" = "8:_E8FD10C3E19EFF21CDD745EC0EA7C70C" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_CE8725025FF66F1B1977929CE1079E8B" + "OwnerKey" = "8:_F702FBF72E8E3900A9D8153F0B8FF231" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_CE8725025FF66F1B1977929CE1079E8B" + "OwnerKey" = "8:_4111B82A2AD53B23423B43D2CF8EEF93" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_CE8725025FF66F1B1977929CE1079E8B" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_CE8725025FF66F1B1977929CE1079E8B" + "OwnerKey" = "8:_064E799438ACB76CE32EDBCDD4283BC8" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_D9168E8B53F6E14FA36C84958F908997" + "OwnerKey" = "8:_FE4506DB300A9C40126C69A365B6606D" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_D9168E8B53F6E14FA36C84958F908997" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_D9168E8B53F6E14FA36C84958F908997" + "OwnerKey" = "8:_F702FBF72E8E3900A9D8153F0B8FF231" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_E8FD10C3E19EFF21CDD745EC0EA7C70C" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_E8FD10C3E19EFF21CDD745EC0EA7C70C" + "OwnerKey" = "8:_064E799438ACB76CE32EDBCDD4283BC8" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_EC75420880E338A94C6B3E4129D66ED4" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_EF722D653CB3B1A62A5ACCE81FA7D2CE" + "OwnerKey" = "8:_115712F578D9EBB3109B94958D677211" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_EF722D653CB3B1A62A5ACCE81FA7D2CE" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_F49D69E31015218F391D16CD99C7495C" + "OwnerKey" = "8:_47B034E1418C8B9327CB9EDE397D5FD6" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_F49D69E31015218F391D16CD99C7495C" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_F49D69E31015218F391D16CD99C7495C" + "OwnerKey" = "8:_C6055B8970CE231F0F157DB3AA184D47" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_F49D69E31015218F391D16CD99C7495C" + "OwnerKey" = "8:_064E799438ACB76CE32EDBCDD4283BC8" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_F702FBF72E8E3900A9D8153F0B8FF231" + "OwnerKey" = "8:_4F705D33472964DCD62BF97373D5911C" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_F702FBF72E8E3900A9D8153F0B8FF231" + "OwnerKey" = "8:_C6F5AAEFEFAD0E4D78974661C54FD887" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_F702FBF72E8E3900A9D8153F0B8FF231" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_F702FBF72E8E3900A9D8153F0B8FF231" + "OwnerKey" = "8:_5ED72FC4ACDAE7178194246A390B312D" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_F702FBF72E8E3900A9D8153F0B8FF231" + "OwnerKey" = "8:_064E799438ACB76CE32EDBCDD4283BC8" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_F702FBF72E8E3900A9D8153F0B8FF231" + "OwnerKey" = "8:_E8FD10C3E19EFF21CDD745EC0EA7C70C" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_FE4506DB300A9C40126C69A365B6606D" + "OwnerKey" = "8:_C6F5AAEFEFAD0E4D78974661C54FD887" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_FE4506DB300A9C40126C69A365B6606D" + "OwnerKey" = "8:_5F23C5FF65182F0DBB838CC1247B3270" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_FE4506DB300A9C40126C69A365B6606D" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_FE4506DB300A9C40126C69A365B6606D" + "OwnerKey" = "8:_5ED72FC4ACDAE7178194246A390B312D" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_FE4506DB300A9C40126C69A365B6606D" + "OwnerKey" = "8:_7522A064999CC648FF409B5F21E46D09" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_FE4506DB300A9C40126C69A365B6606D" + "OwnerKey" = "8:_064E799438ACB76CE32EDBCDD4283BC8" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_FE4506DB300A9C40126C69A365B6606D" + "OwnerKey" = "8:_E8FD10C3E19EFF21CDD745EC0EA7C70C" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_FE4506DB300A9C40126C69A365B6606D" + "OwnerKey" = "8:_6A4ADB4AD6EF61BB966B81F68B6964E8" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_FE4506DB300A9C40126C69A365B6606D" + "OwnerKey" = "8:_F702FBF72E8E3900A9D8153F0B8FF231" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_FE4506DB300A9C40126C69A365B6606D" + "OwnerKey" = "8:_4F705D33472964DCD62BF97373D5911C" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_EC75420880E338A94C6B3E4129D66ED4" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_1B43F574460893EFC4119FB063720BA9" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_5F23C5FF65182F0DBB838CC1247B3270" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_99BACB5324A8434F781E8D4D10A7EDC7" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_115712F578D9EBB3109B94958D677211" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_8AF6DD6F977158202394A251C107BA59" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_EF722D653CB3B1A62A5ACCE81FA7D2CE" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_5ED72FC4ACDAE7178194246A390B312D" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_7522A064999CC648FF409B5F21E46D09" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_679D819A2BD96F43DE73BEC8F5B9140B" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_C6055B8970CE231F0F157DB3AA184D47" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_C9CF83DB989FE3AAFD0EE8045A16B62F" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_13C335171777659196A395DA0A9C1040" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_B50D2122F2FB80D196B3238B13DB49A2" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_F49D69E31015218F391D16CD99C7495C" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_44EA96E53084B60E9A4070388EEF7E35" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_E8FD10C3E19EFF21CDD745EC0EA7C70C" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_CE8725025FF66F1B1977929CE1079E8B" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_6A4ADB4AD6EF61BB966B81F68B6964E8" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_960E2CC7274B69BABC6941BC8B8975C1" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_F702FBF72E8E3900A9D8153F0B8FF231" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_C6F5AAEFEFAD0E4D78974661C54FD887" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_FE4506DB300A9C40126C69A365B6606D" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_D9168E8B53F6E14FA36C84958F908997" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_5E2B82D9FCB94C1861BE361B63AAE81A" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_4111B82A2AD53B23423B43D2CF8EEF93" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_C27DF94F2011639452C2601FDD323D9C" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_3782AF8405A8F8B7E4D5665D14470170" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_89DD098843E9FB331C28376DD54FEE27" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_411A37065770F1244C75CBA4DB352BE4" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_A05113AD6289413349425368468DB5CF" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_A006D997702F0219515F49E02EF5518D" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_C18FF9DC675151BE9403FEBC6CD17C29" + "MsmSig" = "8:_UNDEFINED" + } + } + "Configurations" + { + "Debug" + { + "DisplayName" = "8:Debug" + "IsDebugOnly" = "11:TRUE" + "IsReleaseOnly" = "11:FALSE" + "OutputFilename" = "8:Debug\\Instalator.msi" + "PackageFilesAs" = "3:2" + "PackageFileSize" = "3:-2147483648" + "CabType" = "3:1" + "Compression" = "3:2" + "SignOutput" = "11:FALSE" + "CertificateFile" = "8:" + "PrivateKeyFile" = "8:" + "TimeStampServer" = "8:" + "InstallerBootstrapper" = "3:2" + "BootstrapperCfg:{63ACBE69-63AA-4F98-B2B6-99F9E24495F2}" + { + "Enabled" = "11:TRUE" + "PromptEnabled" = "11:TRUE" + "PrerequisitesLocation" = "2:1" + "Url" = "8:" + "ComponentsUrl" = "8:" + "Items" + { + "{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.Net.Framework.3.5.SP1" + { + "Name" = "8:.NET Framework 3.5 SP1" + "ProductCode" = "8:Microsoft.Net.Framework.3.5.SP1" + } + } + } + } + "Release" + { + "DisplayName" = "8:Release" + "IsDebugOnly" = "11:FALSE" + "IsReleaseOnly" = "11:TRUE" + "OutputFilename" = "8:Release\\Instalator.msi" + "PackageFilesAs" = "3:2" + "PackageFileSize" = "3:-2147483648" + "CabType" = "3:1" + "Compression" = "3:2" + "SignOutput" = "11:FALSE" + "CertificateFile" = "8:" + "PrivateKeyFile" = "8:" + "TimeStampServer" = "8:" + "InstallerBootstrapper" = "3:2" + "BootstrapperCfg:{63ACBE69-63AA-4F98-B2B6-99F9E24495F2}" + { + "Enabled" = "11:TRUE" + "PromptEnabled" = "11:TRUE" + "PrerequisitesLocation" = "2:1" + "Url" = "8:" + "ComponentsUrl" = "8:" + "Items" + { + "{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:.NETFramework,Version=v4.6.1" + { + "Name" = "8:Microsoft .NET Framework 4.6.1 (x86 and x64)" + "ProductCode" = "8:.NETFramework,Version=v4.6.1" + } + } + } + } + } + "Deployable" + { + "CustomAction" + { + } + "DefaultFeature" + { + "Name" = "8:DefaultFeature" + "Title" = "8:" + "Description" = "8:" + } + "ExternalPersistence" + { + "LaunchCondition" + { + "{A06ECF26-33A3-4562-8140-9B0E340D4F24}:_68E9A4974B7347D6B68EBF2B3A14C7BA" + { + "Name" = "8:.NET Framework" + "Message" = "8:[VSDNETMSG]" + "FrameworkVersion" = "8:ANY" + "AllowLaterVersions" = "11:FALSE" + "InstallUrl" = "8:http://go.microsoft.com/fwlink/?LinkId=671728" + } + } + } + "File" + { + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_064E799438ACB76CE32EDBCDD4283BC8" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:Azure.Identity, Version=1.11.4.0, Culture=neutral, PublicKeyToken=92742159e12e44c8, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_064E799438ACB76CE32EDBCDD4283BC8" + { + "Name" = "8:Azure.Identity.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:Azure.Identity.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_115712F578D9EBB3109B94958D677211" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:Microsoft.IdentityModel.Protocols.OpenIdConnect, Version=6.35.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_115712F578D9EBB3109B94958D677211" + { + "Name" = "8:Microsoft.IdentityModel.Protocols.OpenIdConnect.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:Microsoft.IdentityModel.Protocols.OpenIdConnect.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_13C335171777659196A395DA0A9C1040" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:System.Security.Principal.Windows, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" + "ScatterAssemblies" + { + "_13C335171777659196A395DA0A9C1040" + { + "Name" = "8:System.Security.Principal.Windows.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:System.Security.Principal.Windows.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_1B43F574460893EFC4119FB063720BA9" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51" + "ScatterAssemblies" + { + "_1B43F574460893EFC4119FB063720BA9" + { + "Name" = "8:System.ValueTuple.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:System.ValueTuple.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_3782AF8405A8F8B7E4D5665D14470170" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:System.Runtime.InteropServices.RuntimeInformation, Version=4.0.2.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" + "ScatterAssemblies" + { + "_3782AF8405A8F8B7E4D5665D14470170" + { + "Name" = "8:System.Runtime.InteropServices.RuntimeInformation.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:System.Runtime.InteropServices.RuntimeInformation.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_4111B82A2AD53B23423B43D2CF8EEF93" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:Microsoft.Bcl.AsyncInterfaces, Version=1.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51" + "ScatterAssemblies" + { + "_4111B82A2AD53B23423B43D2CF8EEF93" + { + "Name" = "8:Microsoft.Bcl.AsyncInterfaces.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:Microsoft.Bcl.AsyncInterfaces.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_411A37065770F1244C75CBA4DB352BE4" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:TRUE" + "AssemblyAsmDisplayName" = "8:System.Net.Http, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_411A37065770F1244C75CBA4DB352BE4" + { + "Name" = "8:System.Net.Http.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:System.Net.Http.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:TRUE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_44EA96E53084B60E9A4070388EEF7E35" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:Microsoft.IdentityModel.Abstractions, Version=6.35.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_44EA96E53084B60E9A4070388EEF7E35" + { + "Name" = "8:Microsoft.IdentityModel.Abstractions.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:Microsoft.IdentityModel.Abstractions.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_47B034E1418C8B9327CB9EDE397D5FD6" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:Microsoft.Identity.Client.Extensions.Msal, Version=4.61.3.0, Culture=neutral, PublicKeyToken=0a613f4dd989e8ae, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_47B034E1418C8B9327CB9EDE397D5FD6" + { + "Name" = "8:Microsoft.Identity.Client.Extensions.Msal.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:Microsoft.Identity.Client.Extensions.Msal.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_49788B1BF43C40538D55DF85500AFDB9" + { + "SourcePath" = "8:..\\ImportDokMag\\cab.ico" + "TargetName" = "8:cab.ico" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_4F705D33472964DCD62BF97373D5911C" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:System.ClientModel, Version=1.0.0.0, Culture=neutral, PublicKeyToken=92742159e12e44c8, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_4F705D33472964DCD62BF97373D5911C" + { + "Name" = "8:System.ClientModel.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:System.ClientModel.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_5E2B82D9FCB94C1861BE361B63AAE81A" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:System.Buffers, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51" + "ScatterAssemblies" + { + "_5E2B82D9FCB94C1861BE361B63AAE81A" + { + "Name" = "8:System.Buffers.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:System.Buffers.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_5ED72FC4ACDAE7178194246A390B312D" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:Microsoft.IdentityModel.JsonWebTokens, Version=6.35.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_5ED72FC4ACDAE7178194246A390B312D" + { + "Name" = "8:Microsoft.IdentityModel.JsonWebTokens.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:Microsoft.IdentityModel.JsonWebTokens.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_5F23C5FF65182F0DBB838CC1247B3270" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:System.Text.Encodings.Web, Version=6.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_5F23C5FF65182F0DBB838CC1247B3270" + { + "Name" = "8:System.Text.Encodings.Web.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:System.Text.Encodings.Web.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_679D819A2BD96F43DE73BEC8F5B9140B" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:Microsoft.IdentityModel.Logging, Version=6.35.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_679D819A2BD96F43DE73BEC8F5B9140B" + { + "Name" = "8:Microsoft.IdentityModel.Logging.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:Microsoft.IdentityModel.Logging.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_6A4ADB4AD6EF61BB966B81F68B6964E8" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:System.Diagnostics.DiagnosticSource, Version=6.0.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_6A4ADB4AD6EF61BB966B81F68B6964E8" + { + "Name" = "8:System.Diagnostics.DiagnosticSource.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:System.Diagnostics.DiagnosticSource.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_7522A064999CC648FF409B5F21E46D09" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:Microsoft.IdentityModel.Tokens, Version=6.35.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_7522A064999CC648FF409B5F21E46D09" + { + "Name" = "8:Microsoft.IdentityModel.Tokens.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:Microsoft.IdentityModel.Tokens.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_89DD098843E9FB331C28376DD54FEE27" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:netstandard, Version=2.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51" + "ScatterAssemblies" + { + "_89DD098843E9FB331C28376DD54FEE27" + { + "Name" = "8:netstandard.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:netstandard.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_8AF6DD6F977158202394A251C107BA59" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:System.IdentityModel.Tokens.Jwt, Version=6.35.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_8AF6DD6F977158202394A251C107BA59" + { + "Name" = "8:System.IdentityModel.Tokens.Jwt.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:System.IdentityModel.Tokens.Jwt.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_960E2CC7274B69BABC6941BC8B8975C1" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:System.Runtime.CompilerServices.Unsafe, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_960E2CC7274B69BABC6941BC8B8975C1" + { + "Name" = "8:System.Runtime.CompilerServices.Unsafe.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:System.Runtime.CompilerServices.Unsafe.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_99BACB5324A8434F781E8D4D10A7EDC7" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:System.Security.AccessControl, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_99BACB5324A8434F781E8D4D10A7EDC7" + { + "Name" = "8:System.Security.AccessControl.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:System.Security.AccessControl.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_A006D997702F0219515F49E02EF5518D" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:TRUE" + "AssemblyAsmDisplayName" = "8:System.IO.Compression, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_A006D997702F0219515F49E02EF5518D" + { + "Name" = "8:System.IO.Compression.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:System.IO.Compression.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:TRUE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_A05113AD6289413349425368468DB5CF" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:TRUE" + "AssemblyAsmDisplayName" = "8:System.IO.Compression.FileSystem, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_A05113AD6289413349425368468DB5CF" + { + "Name" = "8:System.IO.Compression.FileSystem.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:System.IO.Compression.FileSystem.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:TRUE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_B50D2122F2FB80D196B3238B13DB49A2" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:System.IO.FileSystem.AccessControl, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" + "ScatterAssemblies" + { + "_B50D2122F2FB80D196B3238B13DB49A2" + { + "Name" = "8:System.IO.FileSystem.AccessControl.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:System.IO.FileSystem.AccessControl.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_C18FF9DC675151BE9403FEBC6CD17C29" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:TRUE" + "AssemblyAsmDisplayName" = "8:System.Diagnostics.Tracing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_C18FF9DC675151BE9403FEBC6CD17C29" + { + "Name" = "8:System.Diagnostics.Tracing.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:System.Diagnostics.Tracing.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:TRUE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_C27DF94F2011639452C2601FDD323D9C" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:System.Net.Http, Version=4.2.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" + "ScatterAssemblies" + { + "_C27DF94F2011639452C2601FDD323D9C" + { + "Name" = "8:System.Net.Http.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:System.Net.Http.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:TRUE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_C6055B8970CE231F0F157DB3AA184D47" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:Microsoft.Data.SqlClient, Version=5.0.0.0, Culture=neutral, PublicKeyToken=23ec7fc2d6eaa4a5, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_C6055B8970CE231F0F157DB3AA184D47" + { + "Name" = "8:Microsoft.Data.SqlClient.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:Microsoft.Data.SqlClient.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_C6F5AAEFEFAD0E4D78974661C54FD887" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:System.Memory.Data, Version=1.0.2.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_C6F5AAEFEFAD0E4D78974661C54FD887" + { + "Name" = "8:System.Memory.Data.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:System.Memory.Data.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_C9CF83DB989FE3AAFD0EE8045A16B62F" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:System.Security.Cryptography.ProtectedData, Version=4.0.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_C9CF83DB989FE3AAFD0EE8045A16B62F" + { + "Name" = "8:System.Security.Cryptography.ProtectedData.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:System.Security.Cryptography.ProtectedData.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_CE8725025FF66F1B1977929CE1079E8B" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:System.Threading.Tasks.Extensions, Version=4.2.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_CE8725025FF66F1B1977929CE1079E8B" + { + "Name" = "8:System.Threading.Tasks.Extensions.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:System.Threading.Tasks.Extensions.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_D9168E8B53F6E14FA36C84958F908997" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:System.Numerics.Vectors, Version=4.1.4.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" + "ScatterAssemblies" + { + "_D9168E8B53F6E14FA36C84958F908997" + { + "Name" = "8:System.Numerics.Vectors.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:System.Numerics.Vectors.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_E8FD10C3E19EFF21CDD745EC0EA7C70C" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:Azure.Core, Version=1.38.0.0, Culture=neutral, PublicKeyToken=92742159e12e44c8, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_E8FD10C3E19EFF21CDD745EC0EA7C70C" + { + "Name" = "8:Azure.Core.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:Azure.Core.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_EC75420880E338A94C6B3E4129D66ED4" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:cdn_api20251.net, Version=2025.1.0.0, Culture=neutral, PublicKeyToken=5179454a0b814fab, processorArchitecture=x86" + "ScatterAssemblies" + { + "_EC75420880E338A94C6B3E4129D66ED4" + { + "Name" = "8:cdn_api20251.net.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:cdn_api20251.net.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_EF722D653CB3B1A62A5ACCE81FA7D2CE" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:Microsoft.IdentityModel.Protocols, Version=6.35.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_EF722D653CB3B1A62A5ACCE81FA7D2CE" + { + "Name" = "8:Microsoft.IdentityModel.Protocols.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:Microsoft.IdentityModel.Protocols.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_F49D69E31015218F391D16CD99C7495C" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:Microsoft.Identity.Client, Version=4.61.3.0, Culture=neutral, PublicKeyToken=0a613f4dd989e8ae, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_F49D69E31015218F391D16CD99C7495C" + { + "Name" = "8:Microsoft.Identity.Client.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:Microsoft.Identity.Client.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_F702FBF72E8E3900A9D8153F0B8FF231" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:System.Text.Json, Version=4.0.1.2, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_F702FBF72E8E3900A9D8153F0B8FF231" + { + "Name" = "8:System.Text.Json.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:System.Text.Json.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_FE4506DB300A9C40126C69A365B6606D" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:System.Memory, Version=4.0.1.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_FE4506DB300A9C40126C69A365B6606D" + { + "Name" = "8:System.Memory.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:System.Memory.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + } + "FileType" + { + } + "Folder" + { + "{1525181F-901A-416C-8A58-119130FE478E}:_0E2A769A3BDC48F2B395EBE23FF897DE" + { + "Name" = "8:#1919" + "AlwaysCreate" = "11:FALSE" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Property" = "8:ProgramMenuFolder" + "Folders" + { + } + } + "{1525181F-901A-416C-8A58-119130FE478E}:_35C2D5FD2F5942BD81B83EB09E3DA2E6" + { + "Name" = "8:#1916" + "AlwaysCreate" = "11:FALSE" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Property" = "8:DesktopFolder" + "Folders" + { + } + } + "{3C67513D-01DD-4637-8A68-80971EB9504F}:_50871440B64A4B20B1CD74CFDF9CA7F9" + { + "DefaultLocation" = "8:[ProgramFilesFolder][Manufacturer]\\[ProductName]" + "Name" = "8:#1925" + "AlwaysCreate" = "11:FALSE" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Property" = "8:TARGETDIR" + "Folders" + { + } + } + } + "LaunchCondition" + { + } + "Locator" + { + } + "MsiBootstrapper" + { + "LangId" = "3:1045" + "RequiresElevation" = "11:FALSE" + } + "Product" + { + "Name" = "8:Microsoft Visual Studio" + "ProductName" = "8:ImportDokMag" + "ProductCode" = "8:{C1C7C7F2-F7E5-4A19-B4DD-F40A170381A2}" + "PackageCode" = "8:{EADCC523-5C12-4037-B2FE-80FBA9FA0DA3}" + "UpgradeCode" = "8:{E007770B-8123-40D0-A07D-1E6CFEBE903D}" + "AspNetVersion" = "8:2.0.50727.0" + "RestartWWWService" = "11:FALSE" + "RemovePreviousVersions" = "11:TRUE" + "DetectNewerInstalledVersion" = "11:TRUE" + "InstallAllUsers" = "11:TRUE" + "ProductVersion" = "8:2.0.0" + "Manufacturer" = "8:myCONSULT SP. z o. o." + "ARPHELPTELEPHONE" = "8:" + "ARPHELPLINK" = "8:" + "Title" = "8:Instalator programu ImportDokMag" + "Subject" = "8:" + "ARPCONTACT" = "8:Krzysztof Czapliński" + "Keywords" = "8:" + "ARPCOMMENTS" = "8:Program do importu dekretów dokumnetów magazynowych" + "ARPURLINFOABOUT" = "8:www.myconsult.com.pl" + "ARPPRODUCTICON" = "8:_49788B1BF43C40538D55DF85500AFDB9" + "ARPIconIndex" = "3:0" + "SearchPath" = "8:" + "UseSystemSearchPath" = "11:TRUE" + "TargetPlatform" = "3:0" + "PreBuildEvent" = "8:" + "PostBuildEvent" = "8:" + "RunPostBuildEvent" = "3:0" + } + "Registry" + { + "HKLM" + { + "Keys" + { + "{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_14A5D4D1DAF74AB1B116EF6D64D465B8" + { + "Name" = "8:Software" + "Condition" = "8:" + "AlwaysCreate" = "11:FALSE" + "DeleteAtUninstall" = "11:FALSE" + "Transitive" = "11:FALSE" + "Keys" + { + "{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_3D3B378B7D6443379A137B227B2CF8E3" + { + "Name" = "8:[Manufacturer]" + "Condition" = "8:" + "AlwaysCreate" = "11:FALSE" + "DeleteAtUninstall" = "11:FALSE" + "Transitive" = "11:FALSE" + "Keys" + { + } + "Values" + { + } + } + } + "Values" + { + } + } + } + } + "HKCU" + { + "Keys" + { + "{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_183C92BC953A43BBAC0FC1D320E8407E" + { + "Name" = "8:Software" + "Condition" = "8:" + "AlwaysCreate" = "11:FALSE" + "DeleteAtUninstall" = "11:FALSE" + "Transitive" = "11:FALSE" + "Keys" + { + "{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_4E43A27CB157418DB3CEA9E3FC6705B4" + { + "Name" = "8:[Manufacturer]" + "Condition" = "8:" + "AlwaysCreate" = "11:FALSE" + "DeleteAtUninstall" = "11:FALSE" + "Transitive" = "11:FALSE" + "Keys" + { + } + "Values" + { + } + } + } + "Values" + { + } + } + } + } + "HKCR" + { + "Keys" + { + } + } + "HKU" + { + "Keys" + { + } + } + "HKPU" + { + "Keys" + { + } + } + } + "Sequences" + { + } + "Shortcut" + { + "{970C0BB2-C7D0-45D7-ABFA-7EC378858BC0}:_7AC3C26AE5054D769B2CD49356336C7C" + { + "Name" = "8:ImportDokMag" + "Arguments" = "8:" + "Description" = "8:" + "ShowCmd" = "3:1" + "IconIndex" = "3:0" + "Transitive" = "11:FALSE" + "Target" = "8:_370DEE148AAB42D7A584CF9661EBF4CF" + "Folder" = "8:_0E2A769A3BDC48F2B395EBE23FF897DE" + "WorkingFolder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Icon" = "8:" + "Feature" = "8:" + } + } + "UserInterface" + { + "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_2C138F37321C45B8BC863887B265E74D" + { + "Name" = "8:#1902" + "Sequence" = "3:2" + "Attributes" = "3:3" + "Dialogs" + { + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_051D8F80CA62431B88D19FCF6F8DDCCA" + { + "Sequence" = "3:100" + "DisplayName" = "8:Zakończono" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdAdminFinishedDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + } + } + } + } + "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_3857FBBA21254D9196B7BB3782E5F1CC" + { + "Name" = "8:#1900" + "Sequence" = "3:1" + "Attributes" = "3:1" + "Dialogs" + { + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_233F85456C1F46408B1FF52CE2A3333C" + { + "Sequence" = "3:100" + "DisplayName" = "8:Zapraszamy" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdWelcomeDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + "CopyrightWarning" + { + "Name" = "8:CopyrightWarning" + "DisplayName" = "8:#1002" + "Description" = "8:#1102" + "Type" = "3:3" + "ContextData" = "8:" + "Attributes" = "3:0" + "Setting" = "3:1" + "Value" = "8:#1202" + "DefaultValue" = "8:#1202" + "UsePlugInResources" = "11:TRUE" + } + "Welcome" + { + "Name" = "8:Welcome" + "DisplayName" = "8:#1003" + "Description" = "8:#1103" + "Type" = "3:3" + "ContextData" = "8:" + "Attributes" = "3:0" + "Setting" = "3:1" + "Value" = "8:#1203" + "DefaultValue" = "8:#1203" + "UsePlugInResources" = "11:TRUE" + } + } + } + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_366756F4B2114C36AD1714833DF81439" + { + "Sequence" = "3:200" + "DisplayName" = "8:Folder instalacji" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdFolderDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + "InstallAllUsersVisible" + { + "Name" = "8:InstallAllUsersVisible" + "DisplayName" = "8:#1059" + "Description" = "8:#1159" + "Type" = "3:5" + "ContextData" = "8:1;True=1;False=0" + "Attributes" = "3:0" + "Setting" = "3:0" + "Value" = "3:1" + "DefaultValue" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + } + } + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_E8553CE9C9F444AC85EDBE110A18A0C0" + { + "Sequence" = "3:300" + "DisplayName" = "8:Potwierdzanie instalacji" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdConfirmDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + } + } + } + } + "{2479F3F5-0309-486D-8047-8187E2CE5BA0}:_49D1ABE51EB349C2BB84363C2AC4E50C" + { + "UseDynamicProperties" = "11:FALSE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdUserInterface.wim" + } + "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_5CF09CEF61F84E599FFA1A0D5AEDFC2E" + { + "Name" = "8:#1901" + "Sequence" = "3:1" + "Attributes" = "3:2" + "Dialogs" + { + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_C52AA13216134FAF9E4C64657856B7A7" + { + "Sequence" = "3:100" + "DisplayName" = "8:Postęp" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdProgressDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + "ShowProgress" + { + "Name" = "8:ShowProgress" + "DisplayName" = "8:#1009" + "Description" = "8:#1109" + "Type" = "3:5" + "ContextData" = "8:1;True=1;False=0" + "Attributes" = "3:0" + "Setting" = "3:0" + "Value" = "3:1" + "DefaultValue" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + } + } + } + } + "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_7D365393285F4299AEA6C715E85E5BD9" + { + "Name" = "8:#1902" + "Sequence" = "3:1" + "Attributes" = "3:3" + "Dialogs" + { + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_5875D34493A9488185B0387EB232B28D" + { + "Sequence" = "3:100" + "DisplayName" = "8:Zakończono" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdFinishedDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + "UpdateText" + { + "Name" = "8:UpdateText" + "DisplayName" = "8:#1058" + "Description" = "8:#1158" + "Type" = "3:15" + "ContextData" = "8:" + "Attributes" = "3:0" + "Setting" = "3:1" + "Value" = "8:#1258" + "DefaultValue" = "8:#1258" + "UsePlugInResources" = "11:TRUE" + } + } + } + } + } + "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_A73298DE647C48F2907A88BC23802AF2" + { + "Name" = "8:#1901" + "Sequence" = "3:2" + "Attributes" = "3:2" + "Dialogs" + { + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_371A5E2D3B5341F88171D2A6E48C489F" + { + "Sequence" = "3:100" + "DisplayName" = "8:Postęp" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdAdminProgressDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + "ShowProgress" + { + "Name" = "8:ShowProgress" + "DisplayName" = "8:#1009" + "Description" = "8:#1109" + "Type" = "3:5" + "ContextData" = "8:1;True=1;False=0" + "Attributes" = "3:0" + "Setting" = "3:0" + "Value" = "3:1" + "DefaultValue" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + } + } + } + } + "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_E874B98968404660B16B15E8077B602A" + { + "Name" = "8:#1900" + "Sequence" = "3:2" + "Attributes" = "3:1" + "Dialogs" + { + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_68269945CB70415F9DFD6F37F3D7F324" + { + "Sequence" = "3:200" + "DisplayName" = "8:Folder instalacji" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdAdminFolderDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + } + } + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_92540D7DEBF24D2A812120C019FA72BD" + { + "Sequence" = "3:100" + "DisplayName" = "8:Zapraszamy" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdAdminWelcomeDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + "CopyrightWarning" + { + "Name" = "8:CopyrightWarning" + "DisplayName" = "8:#1002" + "Description" = "8:#1102" + "Type" = "3:3" + "ContextData" = "8:" + "Attributes" = "3:0" + "Setting" = "3:1" + "Value" = "8:#1202" + "DefaultValue" = "8:#1202" + "UsePlugInResources" = "11:TRUE" + } + "Welcome" + { + "Name" = "8:Welcome" + "DisplayName" = "8:#1003" + "Description" = "8:#1103" + "Type" = "3:3" + "ContextData" = "8:" + "Attributes" = "3:0" + "Setting" = "3:1" + "Value" = "8:#1203" + "DefaultValue" = "8:#1203" + "UsePlugInResources" = "11:TRUE" + } + } + } + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_A4C42942C8AC4E639F27164F9206430F" + { + "Sequence" = "3:300" + "DisplayName" = "8:Potwierdzanie instalacji" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdAdminConfirmDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + } + } + } + } + "{2479F3F5-0309-486D-8047-8187E2CE5BA0}:_F0DF71F431A741539E005077697AEE17" + { + "UseDynamicProperties" = "11:FALSE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdBasicDialogs.wim" + } + } + "MergeModule" + { + } + "ProjectOutput" + { + "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_06B783810FB84C86A4F04496ABE6D3FB" + { + "SourcePath" = "8:" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + "ProjectOutputGroupRegister" = "3:1" + "OutputConfiguration" = "8:" + "OutputGroupCanonicalName" = "8:ReferenceCopyLocalPaths" + "OutputProjectGuid" = "8:{ACEDBC4B-04AD-423D-B0D7-B930B9998493}" + "ShowKeyOutput" = "11:TRUE" + "ExcludeFilters" + { + } + } + "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_370DEE148AAB42D7A584CF9661EBF4CF" + { + "SourcePath" = "8:..\\ImportDokMag\\obj\\x86\\Debug\\ImportDokMag.exe" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_50871440B64A4B20B1CD74CFDF9CA7F9" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + "ProjectOutputGroupRegister" = "3:1" + "OutputConfiguration" = "8:" + "OutputGroupCanonicalName" = "8:Built" + "OutputProjectGuid" = "8:{ACEDBC4B-04AD-423D-B0D7-B930B9998493}" + "ShowKeyOutput" = "11:TRUE" + "ExcludeFilters" + { + } + } + } + } +} diff --git a/Konta.sql b/Konta.sql new file mode 100644 index 0000000..21706ad --- /dev/null +++ b/Konta.sql @@ -0,0 +1,17 @@ +IF EXISTS (SELECT * FROM sysobjects WHERE name = 'my_ImpDM_Konta' AND user_name(uid) = 'CDN') + DROP PROCEDURE [CDN].my_ImpDM_Konta +GO + +CREATE PROCEDURE [CDN].my_ImpDM_Konta +( + @Rok smallint, + @Miesiac smallint +) +AS + SET NOCOUNT ON; + select distinct DT_Konto as Konto + from CDN.Dziennik inner join CDN.DziennikElem on DZK_GIDNumer = DEL_GIDNumer + inner join CDN.Dekrety on DT_GIDNumer = DEL_GIDNumer + where DZK_Rok = @Rok and DZK_Miesiac = @Miesiac + order by 1 +GO diff --git a/README.md b/README.md new file mode 100644 index 0000000..6dda105 --- /dev/null +++ b/README.md @@ -0,0 +1 @@ +# ImportDokMag \ No newline at end of file