Merge pull request #195 feature-NEWDWH2021-1005_jskimport into develop
This commit is contained in:
commit
24c54076fd
@ -8,9 +8,13 @@ ULTMARC_DATA_BUCKET=****************
|
|||||||
ULTMARC_DATA_FOLDER=recv
|
ULTMARC_DATA_FOLDER=recv
|
||||||
JSKULT_BACKUP_BUCKET=****************
|
JSKULT_BACKUP_BUCKET=****************
|
||||||
ULTMARC_BACKUP_FOLDER=ultmarc
|
ULTMARC_BACKUP_FOLDER=ultmarc
|
||||||
|
VJSK_BACKUP_FOLDER=vjsk
|
||||||
JSKULT_CONFIG_BUCKET=**********************
|
JSKULT_CONFIG_BUCKET=**********************
|
||||||
JSKULT_CONFIG_CALENDAR_FOLDER=jskult/calendar
|
JSKULT_CONFIG_CALENDAR_FOLDER=jskult/calendar
|
||||||
JSKULT_CONFIG_CALENDAR_HOLIDAY_LIST_FILE_NAME=jskult_holiday_list.txt
|
JSKULT_CONFIG_CALENDAR_HOLIDAY_LIST_FILE_NAME=jskult_holiday_list.txt
|
||||||
|
JSKULT_CONFIG_CALENDAR_WHOLESALER_STOCK_FILE_NAME=jskult_wholesaler_stock_input_day_list.txt
|
||||||
|
JSKULT_DATA_BUCKET=**********************
|
||||||
|
JSKULT_DATA_FOLDER_RECV=**********************
|
||||||
# 連携データ抽出期間
|
# 連携データ抽出期間
|
||||||
SALES_LAUNDERING_EXTRACT_DATE_PERIOD=0
|
SALES_LAUNDERING_EXTRACT_DATE_PERIOD=0
|
||||||
# 洗替対象テーブル名
|
# 洗替対象テーブル名
|
||||||
|
|||||||
@ -18,6 +18,7 @@ autopep8 = "*"
|
|||||||
flake8 = "*"
|
flake8 = "*"
|
||||||
pytest = "*"
|
pytest = "*"
|
||||||
pytest-cov = "*"
|
pytest-cov = "*"
|
||||||
|
boto3 = "*"
|
||||||
|
|
||||||
[requires]
|
[requires]
|
||||||
python_version = "3.9"
|
python_version = "3.9"
|
||||||
|
|||||||
292
ecs/jskult-batch-daily/Pipfile.lock
generated
292
ecs/jskult-batch-daily/Pipfile.lock
generated
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"_meta": {
|
"_meta": {
|
||||||
"hash": {
|
"hash": {
|
||||||
"sha256": "9bce8f43bcad5d6ae8e5a558b8ade00a83f6e1671993e91b0a883fffa6b95df9"
|
"sha256": "df8b09869c6ad0daff24cf808bac56f528d8ae5835fe70a50d58c2bed724e717"
|
||||||
},
|
},
|
||||||
"pipfile-spec": 6,
|
"pipfile-spec": 6,
|
||||||
"requires": {
|
"requires": {
|
||||||
@ -18,19 +18,19 @@
|
|||||||
"default": {
|
"default": {
|
||||||
"boto3": {
|
"boto3": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
"sha256:816a198a6cc4f283af6b21439d85be6dbe4b73c2232dd906c6bafb4fece28d19",
|
"sha256:2da4a4caa789312ae73d29be9d3e79ce3328e3aaf7e9de0da6f243455ad3aae6",
|
||||||
"sha256:9de90a2c0b853f84436b032b28947fc8a765dc462573a8d543b13f16c6579b40"
|
"sha256:a49b47621c71adfa952127222809ae50867ae4fd249bb932eb1a98519baefa40"
|
||||||
],
|
],
|
||||||
"index": "pypi",
|
"index": "pypi",
|
||||||
"version": "==1.26.107"
|
"version": "==1.26.134"
|
||||||
},
|
},
|
||||||
"botocore": {
|
"botocore": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
"sha256:ee1e43e6cd0864cc6811ba3f05123647612ee3f07a286a4c94f5885aa86d6922",
|
"sha256:0e907b0cab771ab7c9e25efd6b6bc0041ec1b17eb0bab316fd012ef2f8fd99ba",
|
||||||
"sha256:f63942b4b7248c0b3d6ecbc2852cf0787c23ace2a91a012f7ee0b3ae3eb08f4f"
|
"sha256:8a070ee14a430bd3c9cd16fd142e5c2900749060490698b2b981d6d9dadf5f1f"
|
||||||
],
|
],
|
||||||
"markers": "python_version >= '3.7'",
|
"markers": "python_version >= '3.7'",
|
||||||
"version": "==1.29.107"
|
"version": "==1.29.134"
|
||||||
},
|
},
|
||||||
"greenlet": {
|
"greenlet": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
@ -124,11 +124,11 @@
|
|||||||
},
|
},
|
||||||
"s3transfer": {
|
"s3transfer": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
"sha256:06176b74f3a15f61f1b4f25a1fc29a4429040b7647133a463da8fa5bd28d5ecd",
|
"sha256:3c0da2d074bf35d6870ef157158641178a4204a6e689e82546083e31e0311346",
|
||||||
"sha256:2ed07d3866f523cc561bf4a00fc5535827981b117dd7876f036b0c1aca42c947"
|
"sha256:640bb492711f4c0c0905e1f62b6aaeb771881935ad27884852411f8e9cacbca9"
|
||||||
],
|
],
|
||||||
"markers": "python_version >= '3.7'",
|
"markers": "python_version >= '3.7'",
|
||||||
"version": "==0.6.0"
|
"version": "==0.6.1"
|
||||||
},
|
},
|
||||||
"six": {
|
"six": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
@ -140,50 +140,50 @@
|
|||||||
},
|
},
|
||||||
"sqlalchemy": {
|
"sqlalchemy": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
"sha256:07950fc82f844a2de67ddb4e535f29b65652b4d95e8b847823ce66a6d540a41d",
|
"sha256:0aa2cbde85a6eab9263ab480f19e8882d022d30ebcdc14d69e6a8d7c07b0a871",
|
||||||
"sha256:0a865b5ec4ba24f57c33b633b728e43fde77b968911a6046443f581b25d29dd9",
|
"sha256:0d6979c9707f8b82366ba34b38b5a6fe32f75766b2e901f9820e271e95384070",
|
||||||
"sha256:0b49f1f71d7a44329a43d3edd38cc5ee4c058dfef4487498393d16172007954b",
|
"sha256:0eb14a386a5b610305bec6639b35540b47f408b0a59f75999199aed5b3d40079",
|
||||||
"sha256:13f984a190d249769a050634b248aef8991acc035e849d02b634ea006c028fa8",
|
"sha256:2424a84f131901fbb20a99844d47b38b517174c6e964c8efb15ea6bb9ced8c2b",
|
||||||
"sha256:1b69666e25cc03c602d9d3d460e1281810109e6546739187044fc256c67941ef",
|
"sha256:2ad9688debf1f0ae9c6e0706a4e2d33b1a01281317cee9bd1d7eef8020c5baac",
|
||||||
"sha256:1d06e119cf79a3d80ab069f064a07152eb9ba541d084bdaee728d8a6f03fd03d",
|
"sha256:2f0a355264af0952570f18457102984e1f79510f856e5e0ae652e63316d1ca23",
|
||||||
"sha256:246712af9fc761d6c13f4f065470982e175d902e77aa4218c9cb9fc9ff565a0c",
|
"sha256:31f72bb300eed7bfdb373c7c046121d84fa0ae6f383089db9505ff553ac27cef",
|
||||||
"sha256:34eb96c1de91d8f31e988302243357bef3f7785e1b728c7d4b98bd0c117dafeb",
|
"sha256:375b7ba88f261dbd79d044f20cbcd919d88befb63f26af9d084614f10cdf97a6",
|
||||||
"sha256:4c3020afb144572c7bfcba9d7cce57ad42bff6e6115dffcfe2d4ae6d444a214f",
|
"sha256:37de4010f53f452e94e5ed6684480432cfe6a7a8914307ef819cd028b05b98d5",
|
||||||
"sha256:4f759eccb66e6d495fb622eb7f4ac146ae674d829942ec18b7f5a35ddf029597",
|
"sha256:49c138856035cb97f0053e5e57ba90ec936b28a0b8b0020d44965c7b0c0bf03a",
|
||||||
"sha256:68ed381bc340b4a3d373dbfec1a8b971f6350139590c4ca3cb722fdb50035777",
|
"sha256:4f9832815257969b3ca9bf0501351e4c02c8d60cbd3ec9f9070d5b0f8852900e",
|
||||||
"sha256:6b72dccc5864ea95c93e0a9c4e397708917fb450f96737b4a8395d009f90b868",
|
"sha256:566a0ac347cf4632f551e7b28bbd0d215af82e6ffaa2556f565a3b6b51dc3f81",
|
||||||
"sha256:6e84ab63d25d8564d7a8c05dc080659931a459ee27f6ed1cf4c91f292d184038",
|
"sha256:6777673d346071451bf7cccf8d0499024f1bd6a835fc90b4fe7af50373d92ce6",
|
||||||
"sha256:734805708632e3965c2c40081f9a59263c29ffa27cba9b02d4d92dfd57ba869f",
|
"sha256:72746ec17a7d9c5acf2c57a6e6190ceba3dad7127cd85bb17f24e90acc0e8e3f",
|
||||||
"sha256:78612edf4ba50d407d0eb3a64e9ec76e6efc2b5d9a5c63415d53e540266a230a",
|
"sha256:755f653d693f9b8f4286d987aec0d4279821bf8d179a9de8e8a5c685e77e57d6",
|
||||||
"sha256:7e472e9627882f2d75b87ff91c5a2bc45b31a226efc7cc0a054a94fffef85862",
|
"sha256:7612a7366a0855a04430363fb4ab392dc6818aaece0b2e325ff30ee77af9b21f",
|
||||||
"sha256:865392a50a721445156809c1a6d6ab6437be70c1c2599f591a8849ed95d3c693",
|
"sha256:7ad24c85f2a1caf0cd1ae8c2fdb668777a51a02246d9039420f94bd7dbfd37ed",
|
||||||
"sha256:8d118e233f416d713aac715e2c1101e17f91e696ff315fc9efbc75b70d11e740",
|
"sha256:881cc388dded44ae6e17a1666364b98bd76bcdc71b869014ae725f06ba298e0e",
|
||||||
"sha256:8d3ece5960b3e821e43a4927cc851b6e84a431976d3ffe02aadb96519044807e",
|
"sha256:8d97b37b4e60073c38bcf94e289e3be09ef9be870de88d163f16e08f2b9ded1a",
|
||||||
"sha256:93c78d42c14aa9a9e0866eacd5b48df40a50d0e2790ee377af7910d224afddcf",
|
"sha256:9119795d2405eb23bf7e6707e228fe38124df029494c1b3576459aa3202ea432",
|
||||||
"sha256:95719215e3ec7337b9f57c3c2eda0e6a7619be194a5166c07c1e599f6afc20fa",
|
"sha256:9136d596111c742d061c0f99bab95c5370016c4101a32e72c2b634ad5e0757e6",
|
||||||
"sha256:9838bd247ee42eb74193d865e48dd62eb50e45e3fdceb0fdef3351133ee53dcf",
|
"sha256:9ad883ac4f5225999747f0849643c4d0ec809d9ffe0ddc81a81dd3e68d0af463",
|
||||||
"sha256:aa5c270ece17c0c0e0a38f2530c16b20ea05d8b794e46c79171a86b93b758891",
|
"sha256:a25b4c4fdd633501233924f873e6f6cd8970732859ecfe4ecfb60635881f70be",
|
||||||
"sha256:ac6a0311fb21a99855953f84c43fcff4bdca27a2ffcc4f4d806b26b54b5cddc9",
|
"sha256:a30e4db983faa5145e00ef6eaf894a2d503b3221dbf40a595f3011930d3d0bac",
|
||||||
"sha256:ad5363a1c65fde7b7466769d4261126d07d872fc2e816487ae6cec93da604b6b",
|
"sha256:a5e9e78332a5d841422b88b8c490dfd7f761e64b3430249b66c05d02f72ceab0",
|
||||||
"sha256:b3e5864eba71a3718236a120547e52c8da2ccb57cc96cecd0480106a0c799c92",
|
"sha256:b4e08e3831671008888bad5d160d757ef35ce34dbb73b78c3998d16aa1334c97",
|
||||||
"sha256:bbda1da8d541904ba262825a833c9f619e93cb3fd1156be0a5e43cd54d588dcd",
|
"sha256:bf1aae95e80acea02a0a622e1c12d3fefc52ffd0fe7bda70a30d070373fbb6c3",
|
||||||
"sha256:c6e27189ff9aebfb2c02fd252c629ea58657e7a5ff1a321b7fc9c2bf6dc0b5f3",
|
"sha256:c61b89803a87a3b2a394089a7dadb79a6c64c89f2e8930cc187fec43b319f8d2",
|
||||||
"sha256:c8239ce63a90007bce479adf5460d48c1adae4b933d8e39a4eafecfc084e503c",
|
"sha256:cdf80359b641185ae7e580afb9f88cf560298f309a38182972091165bfe1225d",
|
||||||
"sha256:d209594e68bec103ad5243ecac1b40bf5770c9ebf482df7abf175748a34f4853",
|
"sha256:d93ebbff3dcf05274843ad8cf650b48ee634626e752c5d73614e5ec9df45f0ce",
|
||||||
"sha256:d5327f54a9c39e7871fc532639616f3777304364a0bb9b89d6033ad34ef6c5f8",
|
"sha256:db24d2738add6db19d66ca820479d2f8f96d3f5a13c223f27fa28dd2f268a4bd",
|
||||||
"sha256:db4bd1c4792da753f914ff0b688086b9a8fd78bb9bc5ae8b6d2e65f176b81eb9",
|
"sha256:e0d20f27edfd6f35b388da2bdcd7769e4ffa374fef8994980ced26eb287e033a",
|
||||||
"sha256:e4780be0f19e5894c17f75fc8de2fe1ae233ab37827125239ceb593c6f6bd1e2",
|
"sha256:e2f3b5236079bc3e318a92bab2cc3f669cc32127075ab03ff61cacbae1c392b8",
|
||||||
"sha256:e4a019f723b6c1e6b3781be00fb9e0844bc6156f9951c836ff60787cc3938d76",
|
"sha256:e481e54db8cec1457ee7c05f6d2329e3298a304a70d3b5e2e82e77170850b385",
|
||||||
"sha256:e62c4e762d6fd2901692a093f208a6a6575b930e9458ad58c2a7f080dd6132da",
|
"sha256:e5e5dc300a0ca8755ada1569f5caccfcdca28607dfb98b86a54996b288a8ebd3",
|
||||||
"sha256:e730603cae5747bc6d6dece98b45a57d647ed553c8d5ecef602697b1c1501cf2",
|
"sha256:ec2f525273528425ed2f51861b7b88955160cb95dddb17af0914077040aff4a5",
|
||||||
"sha256:ebc4eeb1737a5a9bdb0c24f4c982319fa6edd23cdee27180978c29cbb026f2bd",
|
"sha256:f234ba3bb339ad17803009c8251f5ee65dcf283a380817fe486823b08b26383d",
|
||||||
"sha256:ee2946042cc7851842d7a086a92b9b7b494cbe8c3e7e4627e27bc912d3a7655e",
|
"sha256:f463598f9e51ccc04f0fe08500f9a0c3251a7086765350be418598b753b5561d",
|
||||||
"sha256:f005245e1cb9b8ca53df73ee85e029ac43155e062405015e49ec6187a2e3fb44",
|
"sha256:f717944aee40e9f48776cf85b523bb376aa2d9255a268d6d643c57ab387e7264",
|
||||||
"sha256:f49c5d3c070a72ecb96df703966c9678dda0d4cb2e2736f88d15f5e1203b4159",
|
"sha256:fd0febae872a4042da44e972c070f0fd49a85a0a7727ab6b85425f74348be14e",
|
||||||
"sha256:f61ab84956dc628c8dfe9d105b6aec38afb96adae3e5e7da6085b583ff6ea789"
|
"sha256:fec56c7d1b6a22c8f01557de3975d962ee40270b81b60d1cfdadf2a105d10e84"
|
||||||
],
|
],
|
||||||
"index": "pypi",
|
"index": "pypi",
|
||||||
"version": "==2.0.9"
|
"version": "==2.0.13"
|
||||||
},
|
},
|
||||||
"tenacity": {
|
"tenacity": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
@ -211,14 +211,6 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"develop": {
|
"develop": {
|
||||||
"attrs": {
|
|
||||||
"hashes": [
|
|
||||||
"sha256:29e95c7f6778868dbd49170f98f8818f78f3dc5e0e37c0b1f474e3561b240836",
|
|
||||||
"sha256:c9227bfc2f01993c03f68db37d1d15c9690188323c067c641f1a35ca58185f99"
|
|
||||||
],
|
|
||||||
"markers": "python_version >= '3.6'",
|
|
||||||
"version": "==22.2.0"
|
|
||||||
},
|
|
||||||
"autopep8": {
|
"autopep8": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
"sha256:86e9303b5e5c8160872b2f5ef611161b2893e9bfe8ccc7e2f76385947d57a2f1",
|
"sha256:86e9303b5e5c8160872b2f5ef611161b2893e9bfe8ccc7e2f76385947d57a2f1",
|
||||||
@ -227,65 +219,89 @@
|
|||||||
"index": "pypi",
|
"index": "pypi",
|
||||||
"version": "==2.0.2"
|
"version": "==2.0.2"
|
||||||
},
|
},
|
||||||
|
"boto3": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:2da4a4caa789312ae73d29be9d3e79ce3328e3aaf7e9de0da6f243455ad3aae6",
|
||||||
|
"sha256:a49b47621c71adfa952127222809ae50867ae4fd249bb932eb1a98519baefa40"
|
||||||
|
],
|
||||||
|
"index": "pypi",
|
||||||
|
"version": "==1.26.134"
|
||||||
|
},
|
||||||
|
"botocore": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:0e907b0cab771ab7c9e25efd6b6bc0041ec1b17eb0bab316fd012ef2f8fd99ba",
|
||||||
|
"sha256:8a070ee14a430bd3c9cd16fd142e5c2900749060490698b2b981d6d9dadf5f1f"
|
||||||
|
],
|
||||||
|
"markers": "python_version >= '3.7'",
|
||||||
|
"version": "==1.29.134"
|
||||||
|
},
|
||||||
|
"colorama": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44",
|
||||||
|
"sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"
|
||||||
|
],
|
||||||
|
"markers": "sys_platform == 'win32'",
|
||||||
|
"version": "==0.4.6"
|
||||||
|
},
|
||||||
"coverage": {
|
"coverage": {
|
||||||
"extras": [
|
"extras": [
|
||||||
"toml"
|
"toml"
|
||||||
],
|
],
|
||||||
"hashes": [
|
"hashes": [
|
||||||
"sha256:006ed5582e9cbc8115d2e22d6d2144a0725db542f654d9d4fda86793832f873d",
|
"sha256:0342a28617e63ad15d96dca0f7ae9479a37b7d8a295f749c14f3436ea59fdcb3",
|
||||||
"sha256:046936ab032a2810dcaafd39cc4ef6dd295df1a7cbead08fe996d4765fca9fe4",
|
"sha256:066b44897c493e0dcbc9e6a6d9f8bbb6607ef82367cf6810d387c09f0cd4fe9a",
|
||||||
"sha256:0484d9dd1e6f481b24070c87561c8d7151bdd8b044c93ac99faafd01f695c78e",
|
"sha256:10b15394c13544fce02382360cab54e51a9e0fd1bd61ae9ce012c0d1e103c813",
|
||||||
"sha256:0ce383d5f56d0729d2dd40e53fe3afeb8f2237244b0975e1427bfb2cf0d32bab",
|
"sha256:12580845917b1e59f8a1c2ffa6af6d0908cb39220f3019e36c110c943dc875b0",
|
||||||
"sha256:186e0fc9cf497365036d51d4d2ab76113fb74f729bd25da0975daab2e107fd90",
|
"sha256:156192e5fd3dbbcb11cd777cc469cf010a294f4c736a2b2c891c77618cb1379a",
|
||||||
"sha256:2199988e0bc8325d941b209f4fd1c6fa007024b1442c5576f1a32ca2e48941e6",
|
"sha256:1637253b11a18f453e34013c665d8bf15904c9e3c44fbda34c643fbdc9d452cd",
|
||||||
"sha256:299bc75cb2a41e6741b5e470b8c9fb78d931edbd0cd009c58e5c84de57c06731",
|
"sha256:292300f76440651529b8ceec283a9370532f4ecba9ad67d120617021bb5ef139",
|
||||||
"sha256:3668291b50b69a0c1ef9f462c7df2c235da3c4073f49543b01e7eb1dee7dd540",
|
"sha256:30dcaf05adfa69c2a7b9f7dfd9f60bc8e36b282d7ed25c308ef9e114de7fc23b",
|
||||||
"sha256:36dd42da34fe94ed98c39887b86db9d06777b1c8f860520e21126a75507024f2",
|
"sha256:338aa9d9883aaaad53695cb14ccdeb36d4060485bb9388446330bef9c361c252",
|
||||||
"sha256:38004671848b5745bb05d4d621526fca30cee164db42a1f185615f39dc997292",
|
"sha256:373ea34dca98f2fdb3e5cb33d83b6d801007a8074f992b80311fc589d3e6b790",
|
||||||
"sha256:387fb46cb8e53ba7304d80aadca5dca84a2fbf6fe3faf6951d8cf2d46485d1e5",
|
"sha256:38c0a497a000d50491055805313ed83ddba069353d102ece8aef5d11b5faf045",
|
||||||
"sha256:3eb55b7b26389dd4f8ae911ba9bc8c027411163839dea4c8b8be54c4ee9ae10b",
|
"sha256:40cc0f91c6cde033da493227797be2826cbf8f388eaa36a0271a97a332bfd7ce",
|
||||||
"sha256:420f94a35e3e00a2b43ad5740f935358e24478354ce41c99407cddd283be00d2",
|
"sha256:4436cc9ba5414c2c998eaedee5343f49c02ca93b21769c5fdfa4f9d799e84200",
|
||||||
"sha256:4ac0f522c3b6109c4b764ffec71bf04ebc0523e926ca7cbe6c5ac88f84faced0",
|
"sha256:509ecd8334c380000d259dc66feb191dd0a93b21f2453faa75f7f9cdcefc0718",
|
||||||
"sha256:4c752d5264053a7cf2fe81c9e14f8a4fb261370a7bb344c2a011836a96fb3f57",
|
"sha256:5c587f52c81211d4530fa6857884d37f514bcf9453bdeee0ff93eaaf906a5c1b",
|
||||||
"sha256:4f01911c010122f49a3e9bdc730eccc66f9b72bd410a3a9d3cb8448bb50d65d3",
|
"sha256:5f3671662dc4b422b15776cdca89c041a6349b4864a43aa2350b6b0b03bbcc7f",
|
||||||
"sha256:4f68ee32d7c4164f1e2c8797535a6d0a3733355f5861e0f667e37df2d4b07140",
|
"sha256:6599bf92f33ab041e36e06d25890afbdf12078aacfe1f1d08c713906e49a3fe5",
|
||||||
"sha256:4fa54fb483decc45f94011898727802309a109d89446a3c76387d016057d2c84",
|
"sha256:6e8a95f243d01ba572341c52f89f3acb98a3b6d1d5d830efba86033dd3687ade",
|
||||||
"sha256:507e4720791977934bba016101579b8c500fb21c5fa3cd4cf256477331ddd988",
|
"sha256:706ec567267c96717ab9363904d846ec009a48d5f832140b6ad08aad3791b1f5",
|
||||||
"sha256:53d0fd4c17175aded9c633e319360d41a1f3c6e352ba94edcb0fa5167e2bad67",
|
"sha256:780551e47d62095e088f251f5db428473c26db7829884323e56d9c0c3118791a",
|
||||||
"sha256:55272f33da9a5d7cccd3774aeca7a01e500a614eaea2a77091e9be000ecd401d",
|
"sha256:7ff8f3fb38233035028dbc93715551d81eadc110199e14bbbfa01c5c4a43f8d8",
|
||||||
"sha256:5764e1f7471cb8f64b8cda0554f3d4c4085ae4b417bfeab236799863703e5de2",
|
"sha256:828189fcdda99aae0d6bf718ea766b2e715eabc1868670a0a07bf8404bf58c33",
|
||||||
"sha256:57b77b9099f172804e695a40ebaa374f79e4fb8b92f3e167f66facbf92e8e7f5",
|
"sha256:857abe2fa6a4973f8663e039ead8d22215d31db613ace76e4a98f52ec919068e",
|
||||||
"sha256:5afdad4cc4cc199fdf3e18088812edcf8f4c5a3c8e6cb69127513ad4cb7471a9",
|
"sha256:883123d0bbe1c136f76b56276074b0c79b5817dd4238097ffa64ac67257f4b6c",
|
||||||
"sha256:5cc0783844c84af2522e3a99b9b761a979a3ef10fb87fc4048d1ee174e18a7d8",
|
"sha256:8877d9b437b35a85c18e3c6499b23674684bf690f5d96c1006a1ef61f9fdf0f3",
|
||||||
"sha256:5e1df45c23d4230e3d56d04414f9057eba501f78db60d4eeecfcb940501b08fd",
|
"sha256:8e575a59315a91ccd00c7757127f6b2488c2f914096077c745c2f1ba5b8c0969",
|
||||||
"sha256:6146910231ece63facfc5984234ad1b06a36cecc9fd0c028e59ac7c9b18c38c6",
|
"sha256:97072cc90f1009386c8a5b7de9d4fc1a9f91ba5ef2146c55c1f005e7b5c5e068",
|
||||||
"sha256:797aad79e7b6182cb49c08cc5d2f7aa7b2128133b0926060d0a8889ac43843be",
|
"sha256:9a22cbb5ede6fade0482111fa7f01115ff04039795d7092ed0db43522431b4f2",
|
||||||
"sha256:7c20b731211261dc9739bbe080c579a1835b0c2d9b274e5fcd903c3a7821cf88",
|
"sha256:a063aad9f7b4c9f9da7b2550eae0a582ffc7623dca1c925e50c3fbde7a579771",
|
||||||
"sha256:817295f06eacdc8623dc4df7d8b49cea65925030d4e1e2a7c7218380c0072c25",
|
"sha256:a08c7401d0b24e8c2982f4e307124b671c6736d40d1c39e09d7a8687bddf83ed",
|
||||||
"sha256:81f63e0fb74effd5be736cfe07d710307cc0a3ccb8f4741f7f053c057615a137",
|
"sha256:a0b273fe6dc655b110e8dc89b8ec7f1a778d78c9fd9b4bda7c384c8906072212",
|
||||||
"sha256:872d6ce1f5be73f05bea4df498c140b9e7ee5418bfa2cc8204e7f9b817caa968",
|
"sha256:a2b3b05e22a77bb0ae1a3125126a4e08535961c946b62f30985535ed40e26614",
|
||||||
"sha256:8c99cb7c26a3039a8a4ee3ca1efdde471e61b4837108847fb7d5be7789ed8fd9",
|
"sha256:a66e055254a26c82aead7ff420d9fa8dc2da10c82679ea850d8feebf11074d88",
|
||||||
"sha256:8dbe2647bf58d2c5a6c5bcc685f23b5f371909a5624e9f5cd51436d6a9f6c6ef",
|
"sha256:aa387bd7489f3e1787ff82068b295bcaafbf6f79c3dad3cbc82ef88ce3f48ad3",
|
||||||
"sha256:8efb48fa743d1c1a65ee8787b5b552681610f06c40a40b7ef94a5b517d885c54",
|
"sha256:ae453f655640157d76209f42c62c64c4d4f2c7f97256d3567e3b439bd5c9b06c",
|
||||||
"sha256:92ebc1619650409da324d001b3a36f14f63644c7f0a588e331f3b0f67491f512",
|
"sha256:b5016e331b75310610c2cf955d9f58a9749943ed5f7b8cfc0bb89c6134ab0a84",
|
||||||
"sha256:9d22e94e6dc86de981b1b684b342bec5e331401599ce652900ec59db52940005",
|
"sha256:b9a4ee55174b04f6af539218f9f8083140f61a46eabcaa4234f3c2a452c4ed11",
|
||||||
"sha256:ba279aae162b20444881fc3ed4e4f934c1cf8620f3dab3b531480cf602c76b7f",
|
"sha256:bd3b4b8175c1db502adf209d06136c000df4d245105c8839e9d0be71c94aefe1",
|
||||||
"sha256:bc4803779f0e4b06a2361f666e76f5c2e3715e8e379889d02251ec911befd149",
|
"sha256:bebea5f5ed41f618797ce3ffb4606c64a5de92e9c3f26d26c2e0aae292f015c1",
|
||||||
"sha256:bfe7085783cda55e53510482fa7b5efc761fad1abe4d653b32710eb548ebdd2d",
|
"sha256:c10fbc8a64aa0f3ed136b0b086b6b577bc64d67d5581acd7cc129af52654384e",
|
||||||
"sha256:c448b5c9e3df5448a362208b8d4b9ed85305528313fca1b479f14f9fe0d873b8",
|
"sha256:c2c41c1b1866b670573657d584de413df701f482574bad7e28214a2362cb1fd1",
|
||||||
"sha256:c90e73bdecb7b0d1cea65a08cb41e9d672ac6d7995603d6465ed4914b98b9ad7",
|
"sha256:cf97ed82ca986e5c637ea286ba2793c85325b30f869bf64d3009ccc1a31ae3fd",
|
||||||
"sha256:d2b96123a453a2d7f3995ddb9f28d01fd112319a7a4d5ca99796a7ff43f02af5",
|
"sha256:d1f25ee9de21a39b3a8516f2c5feb8de248f17da7eead089c2e04aa097936b47",
|
||||||
"sha256:d52f0a114b6a58305b11a5cdecd42b2e7f1ec77eb20e2b33969d702feafdd016",
|
"sha256:d2fbc2a127e857d2f8898aaabcc34c37771bf78a4d5e17d3e1f5c30cd0cbc62a",
|
||||||
"sha256:d530191aa9c66ab4f190be8ac8cc7cfd8f4f3217da379606f3dd4e3d83feba69",
|
"sha256:dc945064a8783b86fcce9a0a705abd7db2117d95e340df8a4333f00be5efb64c",
|
||||||
"sha256:d683d230b5774816e7d784d7ed8444f2a40e7a450e5720d58af593cb0b94a212",
|
"sha256:ddc5a54edb653e9e215f75de377354e2455376f416c4378e1d43b08ec50acc31",
|
||||||
"sha256:db45eec1dfccdadb179b0f9ca616872c6f700d23945ecc8f21bb105d74b1c5fc",
|
"sha256:e8834e5f17d89e05697c3c043d3e58a8b19682bf365048837383abfe39adaed5",
|
||||||
"sha256:db8c2c5ace167fd25ab5dd732714c51d4633f58bac21fb0ff63b0349f62755a8",
|
"sha256:ef9659d1cda9ce9ac9585c045aaa1e59223b143f2407db0eaee0b61a4f266fb6",
|
||||||
"sha256:e2926b8abedf750c2ecf5035c07515770944acf02e1c46ab08f6348d24c5f94d",
|
"sha256:f6f5cab2d7f0c12f8187a376cc6582c477d2df91d63f75341307fcdcb5d60303",
|
||||||
"sha256:e627dee428a176ffb13697a2c4318d3f60b2ccdde3acdc9b3f304206ec130ccd",
|
"sha256:f81c9b4bd8aa747d417407a7f6f0b1469a43b36a85748145e144ac4e8d303cb5",
|
||||||
"sha256:efe1c0adad110bf0ad7fb59f833880e489a61e39d699d37249bdf42f80590169"
|
"sha256:f99ef080288f09ffc687423b8d60978cf3a465d3f404a18d1a05474bd8575a47"
|
||||||
],
|
],
|
||||||
"markers": "python_version >= '3.7'",
|
"markers": "python_version >= '3.7'",
|
||||||
"version": "==7.2.2"
|
"version": "==7.2.5"
|
||||||
},
|
},
|
||||||
"exceptiongroup": {
|
"exceptiongroup": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
@ -311,6 +327,14 @@
|
|||||||
"markers": "python_version >= '3.7'",
|
"markers": "python_version >= '3.7'",
|
||||||
"version": "==2.0.0"
|
"version": "==2.0.0"
|
||||||
},
|
},
|
||||||
|
"jmespath": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:02e2e4cc71b5bcab88332eebf907519190dd9e6e82107fa7f83b1003a6252980",
|
||||||
|
"sha256:90261b206d6defd58fdd5e85f478bf633a2901798906be2ad389150c5c60edbe"
|
||||||
|
],
|
||||||
|
"markers": "python_version >= '3.7'",
|
||||||
|
"version": "==1.0.1"
|
||||||
|
},
|
||||||
"mccabe": {
|
"mccabe": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
"sha256:348e0240c33b60bbdf4e523192ef919f28cb2c3d7d5c7794f74009290f236325",
|
"sha256:348e0240c33b60bbdf4e523192ef919f28cb2c3d7d5c7794f74009290f236325",
|
||||||
@ -321,11 +345,11 @@
|
|||||||
},
|
},
|
||||||
"packaging": {
|
"packaging": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
"sha256:714ac14496c3e68c99c29b00845f7a2b85f3bb6f1078fd9f72fd20f0570002b2",
|
"sha256:994793af429502c4ea2ebf6bf664629d07c1a9fe974af92966e4b8d2df7edc61",
|
||||||
"sha256:b6ad297f8907de0fa2fe1ccbd26fdaf387f5f47c7275fedf8cce89f99446cf97"
|
"sha256:a392980d2b6cffa644431898be54b0045151319d1e7ec34f0cfed48767dd334f"
|
||||||
],
|
],
|
||||||
"markers": "python_version >= '3.7'",
|
"markers": "python_version >= '3.7'",
|
||||||
"version": "==23.0"
|
"version": "==23.1"
|
||||||
},
|
},
|
||||||
"pluggy": {
|
"pluggy": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
@ -353,11 +377,11 @@
|
|||||||
},
|
},
|
||||||
"pytest": {
|
"pytest": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
"sha256:130328f552dcfac0b1cec75c12e3f005619dc5f874f0a06e8ff7263f0ee6225e",
|
"sha256:3799fa815351fea3a5e96ac7e503a96fa51cc9942c3753cda7651b93c1cfa362",
|
||||||
"sha256:c99ab0c73aceb050f68929bc93af19ab6db0558791c6a0715723abe9d0ade9d4"
|
"sha256:434afafd78b1d78ed0addf160ad2b77a30d35d4bdf8af234fe621919d9ed15e3"
|
||||||
],
|
],
|
||||||
"index": "pypi",
|
"index": "pypi",
|
||||||
"version": "==7.2.2"
|
"version": "==7.3.1"
|
||||||
},
|
},
|
||||||
"pytest-cov": {
|
"pytest-cov": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
@ -367,6 +391,30 @@
|
|||||||
"index": "pypi",
|
"index": "pypi",
|
||||||
"version": "==4.0.0"
|
"version": "==4.0.0"
|
||||||
},
|
},
|
||||||
|
"python-dateutil": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86",
|
||||||
|
"sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9"
|
||||||
|
],
|
||||||
|
"markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'",
|
||||||
|
"version": "==2.8.2"
|
||||||
|
},
|
||||||
|
"s3transfer": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:3c0da2d074bf35d6870ef157158641178a4204a6e689e82546083e31e0311346",
|
||||||
|
"sha256:640bb492711f4c0c0905e1f62b6aaeb771881935ad27884852411f8e9cacbca9"
|
||||||
|
],
|
||||||
|
"markers": "python_version >= '3.7'",
|
||||||
|
"version": "==0.6.1"
|
||||||
|
},
|
||||||
|
"six": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926",
|
||||||
|
"sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"
|
||||||
|
],
|
||||||
|
"markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'",
|
||||||
|
"version": "==1.16.0"
|
||||||
|
},
|
||||||
"tomli": {
|
"tomli": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
"sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc",
|
"sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc",
|
||||||
@ -374,6 +422,14 @@
|
|||||||
],
|
],
|
||||||
"markers": "python_version < '3.11'",
|
"markers": "python_version < '3.11'",
|
||||||
"version": "==2.0.1"
|
"version": "==2.0.1"
|
||||||
|
},
|
||||||
|
"urllib3": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:8a388717b9476f934a21484e8c8e61875ab60644d29b9b39e11e4b9dc1c6b305",
|
||||||
|
"sha256:aa751d169e23c7479ce47a0cb0da579e3ede798f994f5816a74e4f4500dcea42"
|
||||||
|
],
|
||||||
|
"markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5'",
|
||||||
|
"version": "==1.26.15"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,4 +1,7 @@
|
|||||||
|
import io
|
||||||
|
import os
|
||||||
import os.path as path
|
import os.path as path
|
||||||
|
import tarfile
|
||||||
import tempfile
|
import tempfile
|
||||||
|
|
||||||
import boto3
|
import boto3
|
||||||
@ -16,7 +19,8 @@ class S3Client:
|
|||||||
return []
|
return []
|
||||||
contents = response['Contents']
|
contents = response['Contents']
|
||||||
# 末尾がスラッシュで終わるものはフォルダとみなしてスキップする
|
# 末尾がスラッシュで終わるものはフォルダとみなしてスキップする
|
||||||
objects = [{'filename': content['Key'], 'size': content['Size']} for content in contents if not content['Key'].endswith('/')]
|
objects = [{'filename': content['Key'], 'size': content['Size']}
|
||||||
|
for content in contents if not content['Key'].endswith('/')]
|
||||||
return objects
|
return objects
|
||||||
|
|
||||||
def copy(self, src_bucket: str, src_key: str, dest_bucket: str, dest_key: str) -> None:
|
def copy(self, src_bucket: str, src_key: str, dest_bucket: str, dest_key: str) -> None:
|
||||||
@ -89,6 +93,16 @@ class ConfigBucket(S3Bucket):
|
|||||||
f.seek(0)
|
f.seek(0)
|
||||||
return temporary_file_path
|
return temporary_file_path
|
||||||
|
|
||||||
|
def download_wholesaler_stock_input_day_list(self):
|
||||||
|
# 一時ファイルとして保存する
|
||||||
|
temporary_dir = tempfile.mkdtemp()
|
||||||
|
temporary_file_path = path.join(temporary_dir, environment.JSKULT_CONFIG_CALENDAR_WHOLESALER_STOCK_FILE_NAME)
|
||||||
|
wholesaler_stock_input_day_list_key = f'{environment.JSKULT_CONFIG_CALENDAR_FOLDER}/{environment.JSKULT_CONFIG_CALENDAR_WHOLESALER_STOCK_FILE_NAME}'
|
||||||
|
with open(temporary_file_path, mode='wb') as f:
|
||||||
|
self._s3_client.download_file(self._bucket_name, wholesaler_stock_input_day_list_key, f)
|
||||||
|
f.seek(0)
|
||||||
|
return temporary_file_path
|
||||||
|
|
||||||
|
|
||||||
class JskUltBackupBucket(S3Bucket):
|
class JskUltBackupBucket(S3Bucket):
|
||||||
_bucket_name = environment.JSKULT_BACKUP_BUCKET
|
_bucket_name = environment.JSKULT_BACKUP_BUCKET
|
||||||
@ -96,3 +110,47 @@ class JskUltBackupBucket(S3Bucket):
|
|||||||
|
|
||||||
class UltmarcBackupBucket(JskUltBackupBucket):
|
class UltmarcBackupBucket(JskUltBackupBucket):
|
||||||
_folder = environment.ULTMARC_BACKUP_FOLDER
|
_folder = environment.ULTMARC_BACKUP_FOLDER
|
||||||
|
|
||||||
|
|
||||||
|
class VjskBackupBucket(JskUltBackupBucket):
|
||||||
|
_folder = environment.VJSK_BACKUP_FOLDER
|
||||||
|
|
||||||
|
|
||||||
|
class VjskReceiveBucket(S3Bucket):
|
||||||
|
_bucket_name = environment.JSKULT_DATA_BUCKET
|
||||||
|
_recv_folder = environment.JSKULT_DATA_FOLDER_RECV
|
||||||
|
|
||||||
|
_s3_file_list = None
|
||||||
|
|
||||||
|
def get_s3_file_list(self):
|
||||||
|
self._s3_file_list = self._s3_client.list_objects(self._bucket_name, self._recv_folder)
|
||||||
|
return self._s3_file_list
|
||||||
|
|
||||||
|
def download_data_file(self, data_filename: str):
|
||||||
|
temporary_dir = tempfile.mkdtemp()
|
||||||
|
temporary_file_path = path.join(temporary_dir, f'{data_filename.replace(f"{self._recv_folder}/", "")}')
|
||||||
|
with open(temporary_file_path, mode='wb') as f:
|
||||||
|
self._s3_client.download_file(self._bucket_name, data_filename, f)
|
||||||
|
f.seek(0)
|
||||||
|
return temporary_file_path
|
||||||
|
|
||||||
|
def unzip_data_file(self, filename: str):
|
||||||
|
ret = []
|
||||||
|
with tarfile.open(filename) as tar:
|
||||||
|
temp_dir = os.path.dirname(filename)
|
||||||
|
tar.extractall(path=temp_dir)
|
||||||
|
extracted_files = tar.getnames()
|
||||||
|
for extracted_file in extracted_files:
|
||||||
|
file = os.path.join(temp_dir, extracted_file)
|
||||||
|
ret.append(file)
|
||||||
|
return ret
|
||||||
|
|
||||||
|
def backup_dat_file(self, target_files: list, datetime_key: str):
|
||||||
|
jskult_backup_bucket = VjskBackupBucket()
|
||||||
|
for target_file in target_files:
|
||||||
|
backup_from_file_path = target_file.get("filename")
|
||||||
|
backup_to_filename = backup_from_file_path.replace(f"{self._recv_folder}/", "")
|
||||||
|
backup_key = f'{jskult_backup_bucket._folder}/{datetime_key}/{backup_to_filename}'
|
||||||
|
self._s3_client.copy(self._bucket_name, backup_from_file_path,
|
||||||
|
jskult_backup_bucket._bucket_name, backup_key)
|
||||||
|
self._s3_client.delete_file(self._bucket_name, backup_from_file_path)
|
||||||
|
|||||||
@ -3,6 +3,7 @@ class BatchContext:
|
|||||||
__syor_date: str # 処理日(yyyy/mm/dd形式)
|
__syor_date: str # 処理日(yyyy/mm/dd形式)
|
||||||
__is_not_business_day: bool # 日次バッチ起動日フラグ
|
__is_not_business_day: bool # 日次バッチ起動日フラグ
|
||||||
__is_ultmarc_imported: bool # アルトマーク取込実施済フラグ
|
__is_ultmarc_imported: bool # アルトマーク取込実施済フラグ
|
||||||
|
__is_vjsk_stock_import_day: bool # 卸在庫データ取込対象フラグ
|
||||||
|
|
||||||
def __init__(self) -> None:
|
def __init__(self) -> None:
|
||||||
self.__is_not_business_day = False
|
self.__is_not_business_day = False
|
||||||
@ -37,3 +38,11 @@ class BatchContext:
|
|||||||
@is_ultmarc_imported.setter
|
@is_ultmarc_imported.setter
|
||||||
def is_ultmarc_imported(self, flag: bool):
|
def is_ultmarc_imported(self, flag: bool):
|
||||||
self.__is_ultmarc_imported = flag
|
self.__is_ultmarc_imported = flag
|
||||||
|
|
||||||
|
@property
|
||||||
|
def is_vjsk_stock_import_day(self):
|
||||||
|
return self.__is_vjsk_stock_import_day
|
||||||
|
|
||||||
|
@is_vjsk_stock_import_day.setter
|
||||||
|
def is_vjsk_stock_import_day(self, flag: bool):
|
||||||
|
self.__is_vjsk_stock_import_day = flag
|
||||||
|
|||||||
103
ecs/jskult-batch-daily/src/batch/vjsk/vjsk_data_load_manager.py
Normal file
103
ecs/jskult-batch-daily/src/batch/vjsk/vjsk_data_load_manager.py
Normal file
@ -0,0 +1,103 @@
|
|||||||
|
# from src.batch.vjsk.vjsk_recv_file_manager import VjskDatFile
|
||||||
|
from src.batch.vjsk.vjsk_recv_file_mapper import VjskReceiveFileMapper
|
||||||
|
from src.db.database import Database
|
||||||
|
from src.error.exceptions import BatchOperationException
|
||||||
|
from src.logging.get_logger import get_logger
|
||||||
|
|
||||||
|
logger = get_logger('V実消化データ取込(DB登録)')
|
||||||
|
mapper = VjskReceiveFileMapper()
|
||||||
|
|
||||||
|
|
||||||
|
class VjskDataLoadManager:
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
|
||||||
|
def _import_to_db(src_file_name: str, condkey: str):
|
||||||
|
logger.debug(f"_import_to_db start (src_file_name : {src_file_name}, condkey : {condkey})")
|
||||||
|
|
||||||
|
db = Database.get_instance()
|
||||||
|
data_name = mapper.get_data_name(condkey)
|
||||||
|
table_name_org = mapper.get_org_table(condkey)
|
||||||
|
table_name_src = mapper.get_src_table(condkey)
|
||||||
|
upsert_sql = mapper.get_upsert_sql(condkey)
|
||||||
|
|
||||||
|
try:
|
||||||
|
db.connect()
|
||||||
|
db.execute("SET SESSION sql_mode = 'TRADITIONAL';")
|
||||||
|
|
||||||
|
# orgをtruncate
|
||||||
|
db.execute(f"TRUNCATE TABLE {table_name_org};")
|
||||||
|
|
||||||
|
# orgにload ※warningが発生すれば異常終了させる
|
||||||
|
sql = f"""\
|
||||||
|
LOAD DATA LOCAL INFILE :src_file_name
|
||||||
|
INTO TABLE {table_name_org}
|
||||||
|
FIELDS TERMINATED BY '\\t'
|
||||||
|
ENCLOSED BY '\"'
|
||||||
|
IGNORE 1 LINES;
|
||||||
|
"""
|
||||||
|
db.begin()
|
||||||
|
result = db.execute(sql, {"src_file_name": src_file_name})
|
||||||
|
logger.info(f'{data_name}tsvファイルを{table_name_org}にLOAD : 件数({result.rowcount})')
|
||||||
|
db.commit()
|
||||||
|
|
||||||
|
# org→srcにinsert select
|
||||||
|
db.begin()
|
||||||
|
logger.debug(upsert_sql)
|
||||||
|
db.execute(upsert_sql)
|
||||||
|
# MEMO: insert+selectの結果件数は、LOAD結果と必ず等しいので、executeの結果件数はログ出力しない
|
||||||
|
# MEMO: insert+select 実質10件なのに、result.rowcountは20件になってしまう ※sqlalchemyの仕様
|
||||||
|
# MEMO: https://docs.sqlalchemy.org/en/14/core/connections.html#sqlalchemy.engine.BaseCursorResult.rowcount
|
||||||
|
logger.info(f'{table_name_org}を{table_name_src}にUPSERT')
|
||||||
|
|
||||||
|
db.commit()
|
||||||
|
except Exception as e:
|
||||||
|
db.rollback()
|
||||||
|
raise BatchOperationException(e)
|
||||||
|
finally:
|
||||||
|
db.disconnect()
|
||||||
|
|
||||||
|
logger.debug("_import_to_db done")
|
||||||
|
return
|
||||||
|
|
||||||
|
def _get_tsv_last_row_tab_count(src_file_name: str) -> int:
|
||||||
|
# memo: tsvファイルが数百MBに及ぶことを想定して、末尾から1行分を参照する
|
||||||
|
# memo: 前提1 行区切りは LF('\n')
|
||||||
|
buf_count = 0
|
||||||
|
|
||||||
|
# バイナリモードでファイルオープン
|
||||||
|
with open(src_file_name, 'rb') as file:
|
||||||
|
# ファイルの末尾から2バイト手前に移動
|
||||||
|
file.seek(-2, 2)
|
||||||
|
# 改行文字を見つけるまで逆方向に読み進める
|
||||||
|
while file.read(1) != b'\n':
|
||||||
|
# 1バイト戻って再度読み込み
|
||||||
|
file.seek(-2, 1)
|
||||||
|
# 末尾行を抽出
|
||||||
|
last_line = file.readline().decode().rstrip('\n')
|
||||||
|
# 末尾行に含まれるタブ文字の数を抽出
|
||||||
|
buf_count = last_line.count('\t')
|
||||||
|
|
||||||
|
return buf_count
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def load(self, target: dict):
|
||||||
|
logger.debug(f'load start target:{target}')
|
||||||
|
|
||||||
|
# S3からローカルストレージにdownloadした登録対象のtsvファイルパスを取得
|
||||||
|
local_file_name = target["src_file_path"]
|
||||||
|
|
||||||
|
# tsvファイル末尾行のTABの数が総定数と一致しない場合は例外をスロー
|
||||||
|
# TODO: ↓↓↓developへのマージを優先させたいので、未テストのロジックはコメントアウトする
|
||||||
|
# tsv_tabs = self._get_tsv_last_row_tab_count(local_file_name)
|
||||||
|
# expect_tabs = mapper.get_file_column_separators(target["condkey"])
|
||||||
|
# if tsv_tabs != expect_tabs:
|
||||||
|
# msg = f"受領tsvファイルの末尾行のTABの数が総定数と一致しませんでした local_file_name: {local_file_name}"
|
||||||
|
# raise BatchOperationException(msg)
|
||||||
|
# TODO: ↑↑↑developへのマージを優先させたいので、未テストのロジックはコメントアウトする
|
||||||
|
|
||||||
|
# データベース登録
|
||||||
|
self._import_to_db(local_file_name, target["condkey"])
|
||||||
|
|
||||||
|
logger.debug('load done')
|
||||||
|
return
|
||||||
258
ecs/jskult-batch-daily/src/batch/vjsk/vjsk_importer.py
Normal file
258
ecs/jskult-batch-daily/src/batch/vjsk/vjsk_importer.py
Normal file
@ -0,0 +1,258 @@
|
|||||||
|
from src.aws.s3 import ConfigBucket, VjskReceiveBucket
|
||||||
|
from src.batch.common.batch_context import BatchContext
|
||||||
|
from src.batch.common.calendar_file import CalendarFile
|
||||||
|
from src.batch.vjsk.vjsk_data_load_manager import VjskDataLoadManager
|
||||||
|
from src.batch.vjsk.vjsk_recv_file_mapper import VjskReceiveFileMapper
|
||||||
|
from src.error.exceptions import BatchOperationException
|
||||||
|
from src.logging.get_logger import get_logger
|
||||||
|
|
||||||
|
logger = get_logger('V実消化データ取込')
|
||||||
|
batch_context = BatchContext.get_instance()
|
||||||
|
vjsk_recv_bucket = VjskReceiveBucket()
|
||||||
|
vjsk_mapper = VjskReceiveFileMapper()
|
||||||
|
|
||||||
|
|
||||||
|
def exec():
|
||||||
|
"""V実消化データ取込処理"""
|
||||||
|
logger.debug('exec start')
|
||||||
|
|
||||||
|
# 非営業日なら何もせず終了
|
||||||
|
if batch_context.is_not_business_day:
|
||||||
|
logger.debug('非営業日なので処理をスキップ')
|
||||||
|
return
|
||||||
|
|
||||||
|
# 卸在庫データ取込対象日であれば、卸在庫データ処理対象フラグを立てる
|
||||||
|
logger.debug('卸在庫データ取込対象日であるかを判定')
|
||||||
|
batch_context.is_vjsk_stock_import_day = _determine_today_is_stockslipdata_target()
|
||||||
|
logger.debug(f'判定結果 : {batch_context.is_vjsk_stock_import_day}')
|
||||||
|
if batch_context.is_vjsk_stock_import_day:
|
||||||
|
logger.info('卸在庫データ取込対象日です')
|
||||||
|
|
||||||
|
# V実消化データファイル受領チェック
|
||||||
|
logger.debug('V実消化データファイル受領チェック:開始')
|
||||||
|
received_s3_files = []
|
||||||
|
try:
|
||||||
|
# S3バケットにある受領済のV実消化データファイルの存在チェックをする
|
||||||
|
received_s3_files = _check_received_files()
|
||||||
|
|
||||||
|
except BatchOperationException as e:
|
||||||
|
logger.debug('受領したV実消化データファイルに未受領もものがあります')
|
||||||
|
raise e
|
||||||
|
logger.debug('V実消化データファイル受領チェック:終了')
|
||||||
|
|
||||||
|
# データベース取込
|
||||||
|
logger.debug('V実消化データ取込:開始')
|
||||||
|
try:
|
||||||
|
# S3バケットにある受領済のV実消化データファイルをデータベースに登録する
|
||||||
|
_import_file_to_db(received_s3_files)
|
||||||
|
except Exception as e:
|
||||||
|
logger.debug(f'データベース登録失敗 {e}')
|
||||||
|
raise e
|
||||||
|
|
||||||
|
# V実消化データ受領ファイルバックアップ退避
|
||||||
|
logger.debug('V実消化データ受領ファイルバックアップ退避:開始')
|
||||||
|
try:
|
||||||
|
# 取込が完了したS3バケットにある受領ファイルをバックアップ用S3バケットに移動する
|
||||||
|
vjsk_recv_bucket.backup_dat_file(received_s3_files, batch_context.syor_date)
|
||||||
|
|
||||||
|
except BatchOperationException as e:
|
||||||
|
logger.debug('V実消化データ受領ファイルのバックアップ退避が失敗しました')
|
||||||
|
raise e
|
||||||
|
logger.debug('V実消化データ受領ファイルバックアップ退避:終了')
|
||||||
|
|
||||||
|
logger.debug('exec done')
|
||||||
|
|
||||||
|
|
||||||
|
def _check_if_file_exists(src_list: list, condkey: str) -> bool:
|
||||||
|
logger.debug(f"_check_if_file_exists start (src_list : {src_list} , condkey : {condkey})")
|
||||||
|
# ファイル接頭辞と拡張子が一致するかで判定する
|
||||||
|
ret = False
|
||||||
|
pref = vjsk_mapper.get_file_prefix(condkey)
|
||||||
|
suff = vjsk_mapper.get_file_suffix(condkey)
|
||||||
|
|
||||||
|
for idx, elem in enumerate(src_list):
|
||||||
|
buf = elem.get("filename")
|
||||||
|
filename = buf[buf.rfind("/") + 1:]
|
||||||
|
if filename.startswith(pref) and filename.endswith(suff):
|
||||||
|
ret = True
|
||||||
|
break
|
||||||
|
|
||||||
|
logger.debug(f"_check_if_file_exists done (return : {ret})")
|
||||||
|
return ret
|
||||||
|
|
||||||
|
|
||||||
|
def _check_received_files() -> list:
|
||||||
|
"""V実消化連携データファイル受領確認処理"""
|
||||||
|
logger.debug('_check_received_files start')
|
||||||
|
|
||||||
|
# S3バケット「実消化&アルトマーク V実消化データ受領バケット」にある受領ファイル一覧を取得
|
||||||
|
received_s3_files = vjsk_recv_bucket.get_s3_file_list()
|
||||||
|
logger.debug(f'ファイル一覧{received_s3_files}')
|
||||||
|
|
||||||
|
# ファイル存在確認 卸在庫データファイル(卸在庫データ処理対象日のみ実施)
|
||||||
|
if batch_context.is_vjsk_stock_import_day:
|
||||||
|
if not _check_if_file_exists(received_s3_files, vjsk_mapper.CONDKEY_STOCK_SLIP_DATA):
|
||||||
|
raise BatchOperationException(f'卸在庫データファイルがありません ファイル一覧:{received_s3_files}')
|
||||||
|
|
||||||
|
# ファイル存在確認 卸販売データ
|
||||||
|
if not _check_if_file_exists(received_s3_files, vjsk_mapper.CONDKEY_SLIP_DATA):
|
||||||
|
raise BatchOperationException(f'卸販売データファイルがありません ファイル一覧:{received_s3_files}')
|
||||||
|
|
||||||
|
# ファイル存在確認 卸組織変換マスタ
|
||||||
|
if not _check_if_file_exists(received_s3_files, vjsk_mapper.CONDKEY_ORG_CNV_MST):
|
||||||
|
raise BatchOperationException(f'卸組織変換マスタファイルがありません ファイル一覧:{received_s3_files}')
|
||||||
|
|
||||||
|
# ファイル存在確認 施設統合マスタ
|
||||||
|
if not _check_if_file_exists(received_s3_files, vjsk_mapper.CONDKEY_VOP_HCO_MERGE):
|
||||||
|
raise BatchOperationException(f'施設統合マスタファイルがありません ファイル一覧:{received_s3_files}')
|
||||||
|
|
||||||
|
# ファイル存在確認 卸マスタ
|
||||||
|
if not _check_if_file_exists(received_s3_files, vjsk_mapper.CONDKEY_WHS_MST):
|
||||||
|
raise BatchOperationException(f'卸マスタファイルがありません ファイル一覧:{received_s3_files}')
|
||||||
|
|
||||||
|
# ファイル存在確認 卸ホールディングスマスタ
|
||||||
|
if not _check_if_file_exists(received_s3_files, vjsk_mapper.CONDKEY_HLD_MST):
|
||||||
|
raise BatchOperationException(f'卸ホールディングスマスタファイルがありません ファイル一覧:{received_s3_files}')
|
||||||
|
|
||||||
|
# ファイル存在確認 施設マスタ
|
||||||
|
if not _check_if_file_exists(received_s3_files, vjsk_mapper.CONDKEY_FCL_MST):
|
||||||
|
raise BatchOperationException(f'施設マスタファイルがありません ファイル一覧:{received_s3_files}')
|
||||||
|
|
||||||
|
# ファイル存在確認 メーカー卸組織展開表
|
||||||
|
if not _check_if_file_exists(received_s3_files, vjsk_mapper.CONDKEY_MKR_ORG_HORIZON):
|
||||||
|
raise BatchOperationException(f'メーカー卸組織展開表ファイルがありません ファイル一覧:{received_s3_files}')
|
||||||
|
|
||||||
|
# ファイル存在確認 取引区分マスタ
|
||||||
|
if not _check_if_file_exists(received_s3_files, vjsk_mapper.CONDKEY_TRAN_KBN_MST):
|
||||||
|
raise BatchOperationException(f'取引区分マスタファイルがありません ファイル一覧:{received_s3_files}')
|
||||||
|
|
||||||
|
# ファイル存在確認 製品マスタ
|
||||||
|
if not _check_if_file_exists(received_s3_files, vjsk_mapper.CONDKEY_PHM_PRD_MST):
|
||||||
|
raise BatchOperationException(f'製品マスタファイルがありません ファイル一覧:{received_s3_files}')
|
||||||
|
|
||||||
|
# ファイル存在確認 製品価格マスタ
|
||||||
|
if not _check_if_file_exists(received_s3_files, vjsk_mapper.CONDKEY_PHM_PRICE_MST):
|
||||||
|
raise BatchOperationException(f'製品価格マスタファイルがありません ファイル一覧:{received_s3_files}')
|
||||||
|
|
||||||
|
# ファイル存在確認 卸得意先情報マスタ
|
||||||
|
if not _check_if_file_exists(received_s3_files, vjsk_mapper.CONDKEY_WHS_CUSTOMER_MST):
|
||||||
|
raise BatchOperationException(f'卸得意先情報マスタファイルがありません ファイル一覧:{received_s3_files}')
|
||||||
|
|
||||||
|
# ファイル存在確認 MDBコード変換マスタ
|
||||||
|
if not _check_if_file_exists(received_s3_files, vjsk_mapper.CONDKEY_MDB_CONV_MST):
|
||||||
|
raise BatchOperationException(f'MDBコード変換マスタファイルがありません ファイル一覧:{received_s3_files}')
|
||||||
|
|
||||||
|
# ファイル存在確認 生物由来データ
|
||||||
|
if not _check_if_file_exists(received_s3_files, vjsk_mapper.CONDKEY_BIO_SLIP_DATA):
|
||||||
|
raise BatchOperationException(f'生物由来データファイルがありません ファイル一覧:{received_s3_files}')
|
||||||
|
|
||||||
|
# ファイル存在確認 製造ロット番号マスタ
|
||||||
|
if not _check_if_file_exists(received_s3_files, vjsk_mapper.CONDKEY_LOT_NUM_MST):
|
||||||
|
raise BatchOperationException(f'製造ロット番号マスタファイルがありません ファイル一覧:{received_s3_files}')
|
||||||
|
|
||||||
|
# 想定外ファイルの受領確認 (想定ファイル数、卸在庫データ取込対象日の場合は15、そうでない場合は14)
|
||||||
|
naturally_count = 15 if batch_context.is_vjsk_stock_import_day else 14
|
||||||
|
if len(received_s3_files) > naturally_count:
|
||||||
|
raise BatchOperationException(f'想定数を超える受領ファイルがあります ファイル一覧:{received_s3_files}')
|
||||||
|
|
||||||
|
logger.debug('_check_received_files done')
|
||||||
|
|
||||||
|
return received_s3_files
|
||||||
|
|
||||||
|
|
||||||
|
def _import_file_to_db(received_s3_files: list):
|
||||||
|
"""V実消化連携データ取込処理"""
|
||||||
|
logger.debug('_import_file_to_db start')
|
||||||
|
|
||||||
|
# S3バケット「実消化&アルトマーク V実消化データ受領バケット」の受領ファイルをローカルストレージにdownloadして辞書化する
|
||||||
|
target_dict = {}
|
||||||
|
for s3_file_path in received_s3_files:
|
||||||
|
file_name = s3_file_path.get('filename')
|
||||||
|
|
||||||
|
# S3バケットにある受領ファイルをローカルストレージにdownloadする
|
||||||
|
logger.debug(f"download s3 file start : {file_name}")
|
||||||
|
local_file_path = vjsk_recv_bucket.download_data_file(file_name)
|
||||||
|
logger.debug(f"download s3 file done : {file_name}")
|
||||||
|
|
||||||
|
# ローカルストレージにdownloadした受領ファイル(tar.gz)を解凍する
|
||||||
|
unzip_file_path = vjsk_recv_bucket.unzip_data_file(local_file_path)
|
||||||
|
logger.debug(f"unzip done : {unzip_file_path}")
|
||||||
|
|
||||||
|
# データファイル名に該当する辞書アクセス用のキーを取得する
|
||||||
|
key = vjsk_mapper.get_condkey_by_s3_file_path(file_name)
|
||||||
|
|
||||||
|
# 想定されたデータファイルであれば辞書登録する
|
||||||
|
if key is not None:
|
||||||
|
# ※受領ファイル(tar.gz)の書庫構成はtsvファイルが1つだけの前提
|
||||||
|
target_dict[key] = {"condkey": key, "src_file_path": unzip_file_path[0]}
|
||||||
|
logger.debug(f'取込対象データファイル辞書{target_dict}')
|
||||||
|
|
||||||
|
# DB登録 卸在庫データファイル(卸在庫データ処理対象日のみ実施)
|
||||||
|
if batch_context.is_vjsk_stock_import_day:
|
||||||
|
VjskDataLoadManager.load(target_dict[vjsk_mapper.CONDKEY_STOCK_SLIP_DATA])
|
||||||
|
|
||||||
|
# DB登録 卸販売データ
|
||||||
|
VjskDataLoadManager.load(target_dict[vjsk_mapper.CONDKEY_SLIP_DATA])
|
||||||
|
|
||||||
|
# DB登録 卸組織変換マスタ
|
||||||
|
VjskDataLoadManager.load(target_dict[vjsk_mapper.CONDKEY_ORG_CNV_MST])
|
||||||
|
|
||||||
|
# DB登録 施設統合マスタ
|
||||||
|
VjskDataLoadManager.load(target_dict[vjsk_mapper.CONDKEY_VOP_HCO_MERGE])
|
||||||
|
|
||||||
|
# DB登録 卸マスタ
|
||||||
|
VjskDataLoadManager.load(target_dict[vjsk_mapper.CONDKEY_WHS_MST])
|
||||||
|
|
||||||
|
# DB登録 卸ホールディングスマスタ
|
||||||
|
VjskDataLoadManager.load(target_dict[vjsk_mapper.CONDKEY_HLD_MST])
|
||||||
|
|
||||||
|
# DB登録 施設マスタ
|
||||||
|
VjskDataLoadManager.load(target_dict[vjsk_mapper.CONDKEY_FCL_MST])
|
||||||
|
|
||||||
|
# DB登録 メーカー卸組織展開表
|
||||||
|
VjskDataLoadManager.load(target_dict[vjsk_mapper.CONDKEY_MKR_ORG_HORIZON])
|
||||||
|
|
||||||
|
# DB登録 取引区分マスタ
|
||||||
|
VjskDataLoadManager.load(target_dict[vjsk_mapper.CONDKEY_TRAN_KBN_MST])
|
||||||
|
|
||||||
|
# DB登録 製品マスタ
|
||||||
|
VjskDataLoadManager.load(target_dict[vjsk_mapper.CONDKEY_PHM_PRD_MST])
|
||||||
|
|
||||||
|
# DB登録 製品価格マスタ
|
||||||
|
VjskDataLoadManager.load(target_dict[vjsk_mapper.CONDKEY_PHM_PRICE_MST])
|
||||||
|
|
||||||
|
# DB登録 卸得意先情報マスタ
|
||||||
|
VjskDataLoadManager.load(target_dict[vjsk_mapper.CONDKEY_WHS_CUSTOMER_MST])
|
||||||
|
|
||||||
|
# DB登録 MDBコード変換マスタ
|
||||||
|
VjskDataLoadManager.load(target_dict[vjsk_mapper.CONDKEY_MDB_CONV_MST])
|
||||||
|
|
||||||
|
# DB登録 生物由来データ
|
||||||
|
VjskDataLoadManager.load(target_dict[vjsk_mapper.CONDKEY_BIO_SLIP_DATA])
|
||||||
|
|
||||||
|
# DB登録 製造ロット番号マスタ
|
||||||
|
VjskDataLoadManager.load(target_dict[vjsk_mapper.CONDKEY_LOT_NUM_MST])
|
||||||
|
|
||||||
|
logger.debug('_import_file_to_db done')
|
||||||
|
|
||||||
|
|
||||||
|
def _determine_today_is_stockslipdata_target():
|
||||||
|
"""設定ファイル「V実消化卸在庫データ連携日ファイル」の内容を取得して、処理日付が該当していればTrueを返却する"""
|
||||||
|
logger.debug("_determine_today_is_stockslipdata_target start")
|
||||||
|
try:
|
||||||
|
# 処理日付を取得する
|
||||||
|
today = batch_context.syor_date
|
||||||
|
|
||||||
|
# S3バケット上の設定ファイル「V実消化卸在庫データ連携日ファイル」をローカルストレージにdownloadする
|
||||||
|
wholesaler_stock_list_file_path = ConfigBucket().download_wholesaler_stock_input_day_list()
|
||||||
|
|
||||||
|
# 設定ファイル「V実消化卸在庫データ連携日ファイル」の定義内容を取得する
|
||||||
|
target_days = CalendarFile(wholesaler_stock_list_file_path)
|
||||||
|
|
||||||
|
# 処理日付が、設定ファイル「V実消化卸在庫データ連携日ファイル」の定義に該当するかを判定する
|
||||||
|
ret = target_days.compare_date(today)
|
||||||
|
except Exception as e:
|
||||||
|
logger.error(f'{e}')
|
||||||
|
raise e
|
||||||
|
logger.debug("_determine_today_is_stockslipdata_target done")
|
||||||
|
return ret
|
||||||
1521
ecs/jskult-batch-daily/src/batch/vjsk/vjsk_recv_file_mapper.py
Normal file
1521
ecs/jskult-batch-daily/src/batch/vjsk/vjsk_recv_file_mapper.py
Normal file
File diff suppressed because it is too large
Load Diff
@ -48,7 +48,7 @@ class Database:
|
|||||||
host=self.__host,
|
host=self.__host,
|
||||||
port=self.__port,
|
port=self.__port,
|
||||||
database=self.__schema,
|
database=self.__schema,
|
||||||
query={"charset": "utf8mb4"}
|
query={"charset": "utf8mb4", "local_infile": "1"},
|
||||||
)
|
)
|
||||||
|
|
||||||
self.__transactional_engine = create_engine(
|
self.__transactional_engine = create_engine(
|
||||||
|
|||||||
@ -10,6 +10,7 @@ from src.batch.common.calendar_file import CalendarFile
|
|||||||
from src.batch.dcf_inst_merge import create_dcf_inst_merge
|
from src.batch.dcf_inst_merge import create_dcf_inst_merge
|
||||||
from src.batch.laundering import mst_inst_laundering
|
from src.batch.laundering import mst_inst_laundering
|
||||||
from src.batch.ultmarc import ultmarc_process
|
from src.batch.ultmarc import ultmarc_process
|
||||||
|
from src.batch.vjsk import vjsk_importer
|
||||||
from src.error.exceptions import BatchOperationException
|
from src.error.exceptions import BatchOperationException
|
||||||
from src.logging.get_logger import get_logger
|
from src.logging.get_logger import get_logger
|
||||||
from src.system_var import constants
|
from src.system_var import constants
|
||||||
@ -85,6 +86,7 @@ def exec():
|
|||||||
logger.info('日次処理(V実消化)')
|
logger.info('日次処理(V実消化)')
|
||||||
try:
|
try:
|
||||||
logger.info('V実消化取込:起動')
|
logger.info('V実消化取込:起動')
|
||||||
|
vjsk_importer.exec()
|
||||||
logger.info('V実消化取込:終了')
|
logger.info('V実消化取込:終了')
|
||||||
except BatchOperationException as e:
|
except BatchOperationException as e:
|
||||||
logger.exception(f'V実消化取込処理エラー(異常終了){e}')
|
logger.exception(f'V実消化取込処理エラー(異常終了){e}')
|
||||||
|
|||||||
@ -12,9 +12,13 @@ ULTMARC_DATA_BUCKET = os.environ['ULTMARC_DATA_BUCKET']
|
|||||||
ULTMARC_DATA_FOLDER = os.environ['ULTMARC_DATA_FOLDER']
|
ULTMARC_DATA_FOLDER = os.environ['ULTMARC_DATA_FOLDER']
|
||||||
JSKULT_BACKUP_BUCKET = os.environ['JSKULT_BACKUP_BUCKET']
|
JSKULT_BACKUP_BUCKET = os.environ['JSKULT_BACKUP_BUCKET']
|
||||||
ULTMARC_BACKUP_FOLDER = os.environ['ULTMARC_BACKUP_FOLDER']
|
ULTMARC_BACKUP_FOLDER = os.environ['ULTMARC_BACKUP_FOLDER']
|
||||||
|
VJSK_BACKUP_FOLDER = os.environ['VJSK_BACKUP_FOLDER']
|
||||||
JSKULT_CONFIG_BUCKET = os.environ['JSKULT_CONFIG_BUCKET']
|
JSKULT_CONFIG_BUCKET = os.environ['JSKULT_CONFIG_BUCKET']
|
||||||
JSKULT_CONFIG_CALENDAR_FOLDER = os.environ['JSKULT_CONFIG_CALENDAR_FOLDER']
|
JSKULT_CONFIG_CALENDAR_FOLDER = os.environ['JSKULT_CONFIG_CALENDAR_FOLDER']
|
||||||
JSKULT_CONFIG_CALENDAR_HOLIDAY_LIST_FILE_NAME = os.environ['JSKULT_CONFIG_CALENDAR_HOLIDAY_LIST_FILE_NAME']
|
JSKULT_CONFIG_CALENDAR_HOLIDAY_LIST_FILE_NAME = os.environ['JSKULT_CONFIG_CALENDAR_HOLIDAY_LIST_FILE_NAME']
|
||||||
|
JSKULT_CONFIG_CALENDAR_WHOLESALER_STOCK_FILE_NAME = os.environ['JSKULT_CONFIG_CALENDAR_WHOLESALER_STOCK_FILE_NAME']
|
||||||
|
JSKULT_DATA_BUCKET = os.environ['JSKULT_DATA_BUCKET']
|
||||||
|
JSKULT_DATA_FOLDER_RECV = os.environ['JSKULT_DATA_FOLDER_RECV']
|
||||||
|
|
||||||
# 初期値がある環境変数
|
# 初期値がある環境変数
|
||||||
LOG_LEVEL = os.environ.get('LOG_LEVEL', 'INFO')
|
LOG_LEVEL = os.environ.get('LOG_LEVEL', 'INFO')
|
||||||
|
|||||||
0
ecs/jskult-batch-daily/tests/batch/vjsk/__init__.py
Normal file
0
ecs/jskult-batch-daily/tests/batch/vjsk/__init__.py
Normal file
1377
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_file_check/conftest.py
Normal file
1377
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_file_check/conftest.py
Normal file
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,303 @@
|
|||||||
|
import pytest
|
||||||
|
|
||||||
|
from src.batch.common.batch_context import BatchContext
|
||||||
|
from src.batch.vjsk.vjsk_importer import _check_received_files
|
||||||
|
from src.error.exceptions import BatchOperationException
|
||||||
|
|
||||||
|
|
||||||
|
def test_check_received_files_ok1(init_check_received_files_ok1):
|
||||||
|
"""
|
||||||
|
観点
|
||||||
|
正常系 : 卸在庫データ取込対象日
|
||||||
|
期待値
|
||||||
|
例外が発生しない
|
||||||
|
"""
|
||||||
|
batch_context = BatchContext.get_instance()
|
||||||
|
batch_context.is_vjsk_stock_import_day = True
|
||||||
|
|
||||||
|
received_s3_files = _check_received_files()
|
||||||
|
|
||||||
|
assert received_s3_files is not None
|
||||||
|
|
||||||
|
# target_path = path.dirname(__file__)
|
||||||
|
# target_file = "xxxxxxxxxxxx000000000000.gz"
|
||||||
|
# s3_client.upload_file()
|
||||||
|
|
||||||
|
|
||||||
|
def test_check_received_files_ok2(init_check_received_files_ok2):
|
||||||
|
"""
|
||||||
|
観点
|
||||||
|
正常系 : 卸在庫データ取込対象日以外
|
||||||
|
期待値
|
||||||
|
例外が発生しない
|
||||||
|
"""
|
||||||
|
batch_context = BatchContext.get_instance()
|
||||||
|
batch_context.is_vjsk_stock_import_day = False
|
||||||
|
|
||||||
|
received_s3_files = _check_received_files()
|
||||||
|
# with pytest.raises(BatchOperationException):
|
||||||
|
# received_s3_files = _check_received_files()
|
||||||
|
|
||||||
|
assert received_s3_files is not None
|
||||||
|
|
||||||
|
|
||||||
|
def test_check_received_files_ng01(init_check_received_files_ng01):
|
||||||
|
"""
|
||||||
|
観点
|
||||||
|
異常系 : 卸在庫データファイルが欠落
|
||||||
|
期待値
|
||||||
|
例外が発生する
|
||||||
|
"""
|
||||||
|
batch_context = BatchContext.get_instance()
|
||||||
|
batch_context.is_vjsk_stock_import_day = True
|
||||||
|
|
||||||
|
with pytest.raises(BatchOperationException) as e:
|
||||||
|
_check_received_files()
|
||||||
|
|
||||||
|
assert str(e.value).startswith("卸在庫データファイルがありません") > 0
|
||||||
|
|
||||||
|
|
||||||
|
def test_check_received_files_ng02(init_check_received_files_ng02):
|
||||||
|
"""
|
||||||
|
観点
|
||||||
|
異常系 : 卸販売データファイルが欠落
|
||||||
|
期待値
|
||||||
|
例外が発生する
|
||||||
|
"""
|
||||||
|
batch_context = BatchContext.get_instance()
|
||||||
|
batch_context.is_vjsk_stock_import_day = True
|
||||||
|
|
||||||
|
with pytest.raises(BatchOperationException) as e:
|
||||||
|
_check_received_files()
|
||||||
|
|
||||||
|
assert str(e.value).startswith("卸販売データファイルがありません") > 0
|
||||||
|
|
||||||
|
|
||||||
|
def test_check_received_files_ng03(init_check_received_files_ng03):
|
||||||
|
"""
|
||||||
|
観点
|
||||||
|
異常系 : 卸組織変換マスタファイルが欠落
|
||||||
|
期待値
|
||||||
|
例外が発生する
|
||||||
|
"""
|
||||||
|
batch_context = BatchContext.get_instance()
|
||||||
|
batch_context.is_vjsk_stock_import_day = True
|
||||||
|
|
||||||
|
with pytest.raises(BatchOperationException) as e:
|
||||||
|
_check_received_files()
|
||||||
|
|
||||||
|
assert str(e.value).startswith("卸組織変換マスタファイルがありません") > 0
|
||||||
|
|
||||||
|
|
||||||
|
def test_check_received_files_ng04(init_check_received_files_ng04):
|
||||||
|
"""
|
||||||
|
観点
|
||||||
|
異常系 : 施設統合マスタファイルが欠落
|
||||||
|
期待値
|
||||||
|
例外が発生する
|
||||||
|
"""
|
||||||
|
batch_context = BatchContext.get_instance()
|
||||||
|
batch_context.is_vjsk_stock_import_day = True
|
||||||
|
|
||||||
|
with pytest.raises(BatchOperationException) as e:
|
||||||
|
_check_received_files()
|
||||||
|
|
||||||
|
assert str(e.value).startswith("施設統合マスタファイルがありません") > 0
|
||||||
|
|
||||||
|
|
||||||
|
def test_check_received_files_ng05(init_check_received_files_ng05):
|
||||||
|
"""
|
||||||
|
観点
|
||||||
|
異常系 : 卸マスタファイルが欠落
|
||||||
|
期待値
|
||||||
|
例外が発生する
|
||||||
|
"""
|
||||||
|
batch_context = BatchContext.get_instance()
|
||||||
|
batch_context.is_vjsk_stock_import_day = True
|
||||||
|
|
||||||
|
with pytest.raises(BatchOperationException) as e:
|
||||||
|
_check_received_files()
|
||||||
|
|
||||||
|
assert str(e.value).startswith("卸マスタファイルがありません") > 0
|
||||||
|
|
||||||
|
|
||||||
|
def test_check_received_files_ng06(init_check_received_files_ng06):
|
||||||
|
"""
|
||||||
|
観点
|
||||||
|
異常系 : 卸ホールディングスマスタファイルが欠落
|
||||||
|
期待値
|
||||||
|
例外が発生する
|
||||||
|
"""
|
||||||
|
batch_context = BatchContext.get_instance()
|
||||||
|
batch_context.is_vjsk_stock_import_day = True
|
||||||
|
|
||||||
|
with pytest.raises(BatchOperationException) as e:
|
||||||
|
_check_received_files()
|
||||||
|
|
||||||
|
assert str(e.value).startswith("卸ホールディングスマスタファイルがありません") > 0
|
||||||
|
|
||||||
|
|
||||||
|
def test_check_received_files_ng07(init_check_received_files_ng07):
|
||||||
|
"""異常系 : 施設マスタファイルが欠落"""
|
||||||
|
batch_context = BatchContext.get_instance()
|
||||||
|
batch_context.is_vjsk_stock_import_day = True
|
||||||
|
|
||||||
|
with pytest.raises(BatchOperationException) as e:
|
||||||
|
_check_received_files()
|
||||||
|
|
||||||
|
assert str(e.value).startswith("施設マスタファイルがありません") > 0
|
||||||
|
|
||||||
|
|
||||||
|
def test_check_received_files_ng08(init_check_received_files_ng08):
|
||||||
|
"""
|
||||||
|
観点
|
||||||
|
異常系 : メーカー卸組織展開表ファイルが欠落
|
||||||
|
期待値
|
||||||
|
例外が発生する
|
||||||
|
"""
|
||||||
|
batch_context = BatchContext.get_instance()
|
||||||
|
batch_context.is_vjsk_stock_import_day = True
|
||||||
|
|
||||||
|
with pytest.raises(BatchOperationException) as e:
|
||||||
|
_check_received_files()
|
||||||
|
|
||||||
|
assert str(e.value).startswith("メーカー卸組織展開表ファイルがありません") > 0
|
||||||
|
|
||||||
|
|
||||||
|
def test_check_received_files_ng09(init_check_received_files_ng09):
|
||||||
|
"""異常系 : 取引区分マスタファイルが欠落"""
|
||||||
|
batch_context = BatchContext.get_instance()
|
||||||
|
batch_context.is_vjsk_stock_import_day = True
|
||||||
|
|
||||||
|
with pytest.raises(BatchOperationException) as e:
|
||||||
|
_check_received_files()
|
||||||
|
|
||||||
|
assert str(e.value).startswith("取引区分マスタファイルがありません") > 0
|
||||||
|
|
||||||
|
|
||||||
|
def test_check_received_files_ng10(init_check_received_files_ng10):
|
||||||
|
"""
|
||||||
|
観点
|
||||||
|
異常系 : 製品マスタファイルが欠落
|
||||||
|
期待値
|
||||||
|
例外が発生する
|
||||||
|
"""
|
||||||
|
batch_context = BatchContext.get_instance()
|
||||||
|
batch_context.is_vjsk_stock_import_day = True
|
||||||
|
|
||||||
|
with pytest.raises(BatchOperationException) as e:
|
||||||
|
_check_received_files()
|
||||||
|
|
||||||
|
assert str(e.value).startswith("製品マスタファイルがありません") > 0
|
||||||
|
|
||||||
|
|
||||||
|
def test_check_received_files_ng11(init_check_received_files_ng11):
|
||||||
|
"""
|
||||||
|
観点
|
||||||
|
異常系 : 製品価格マスタファイルが欠落
|
||||||
|
期待値
|
||||||
|
例外が発生する
|
||||||
|
"""
|
||||||
|
batch_context = BatchContext.get_instance()
|
||||||
|
batch_context.is_vjsk_stock_import_day = True
|
||||||
|
|
||||||
|
with pytest.raises(BatchOperationException) as e:
|
||||||
|
_check_received_files()
|
||||||
|
|
||||||
|
assert str(e.value).startswith("製品価格マスタファイルがありません") > 0
|
||||||
|
|
||||||
|
|
||||||
|
def test_check_received_files_ng12(init_check_received_files_ng12):
|
||||||
|
"""
|
||||||
|
観点
|
||||||
|
異常系 : 卸得意先情報マスタファイルが欠落
|
||||||
|
期待値
|
||||||
|
例外が発生する
|
||||||
|
"""
|
||||||
|
batch_context = BatchContext.get_instance()
|
||||||
|
batch_context.is_vjsk_stock_import_day = True
|
||||||
|
|
||||||
|
with pytest.raises(BatchOperationException) as e:
|
||||||
|
_check_received_files()
|
||||||
|
|
||||||
|
assert str(e.value).startswith("卸得意先情報マスタファイルがありません") > 0
|
||||||
|
|
||||||
|
|
||||||
|
def test_check_received_files_ng13(init_check_received_files_ng13):
|
||||||
|
"""
|
||||||
|
観点
|
||||||
|
異常系 : MDBコード変換マスタファイルが欠落
|
||||||
|
期待値
|
||||||
|
例外が発生する
|
||||||
|
"""
|
||||||
|
batch_context = BatchContext.get_instance()
|
||||||
|
batch_context.is_vjsk_stock_import_day = True
|
||||||
|
|
||||||
|
with pytest.raises(BatchOperationException) as e:
|
||||||
|
_check_received_files()
|
||||||
|
|
||||||
|
assert str(e.value).startswith("MDBコード変換マスタファイルがありません") > 0
|
||||||
|
|
||||||
|
|
||||||
|
def test_check_received_files_ng14(init_check_received_files_ng14):
|
||||||
|
"""
|
||||||
|
観点
|
||||||
|
異常系 : 生物由来データファイルが欠落
|
||||||
|
期待値
|
||||||
|
例外が発生する
|
||||||
|
"""
|
||||||
|
batch_context = BatchContext.get_instance()
|
||||||
|
batch_context.is_vjsk_stock_import_day = True
|
||||||
|
|
||||||
|
with pytest.raises(BatchOperationException) as e:
|
||||||
|
_check_received_files()
|
||||||
|
|
||||||
|
assert str(e.value).startswith("生物由来データファイルがありません") > 0
|
||||||
|
|
||||||
|
|
||||||
|
def test_check_received_files_ng15(init_check_received_files_ng15):
|
||||||
|
"""
|
||||||
|
観点
|
||||||
|
異常系 : 製造ロット番号マスタファイルが欠落
|
||||||
|
期待値
|
||||||
|
例外が発生する
|
||||||
|
"""
|
||||||
|
batch_context = BatchContext.get_instance()
|
||||||
|
batch_context.is_vjsk_stock_import_day = True
|
||||||
|
|
||||||
|
with pytest.raises(BatchOperationException) as e:
|
||||||
|
_check_received_files()
|
||||||
|
|
||||||
|
assert str(e.value).startswith("製造ロット番号マスタファイルがありません") > 0
|
||||||
|
|
||||||
|
|
||||||
|
def test_check_received_files_ng16(init_check_received_files_ng16):
|
||||||
|
"""
|
||||||
|
観点
|
||||||
|
異常系 : 想定外のファイルが受領されている(卸在庫データ取込対象日)
|
||||||
|
期待値
|
||||||
|
例外が発生する
|
||||||
|
"""
|
||||||
|
batch_context = BatchContext.get_instance()
|
||||||
|
batch_context.is_vjsk_stock_import_day = True
|
||||||
|
|
||||||
|
with pytest.raises(BatchOperationException) as e:
|
||||||
|
_check_received_files()
|
||||||
|
|
||||||
|
assert str(e.value).startswith("想定数を超える受領ファイルがあります") > 0
|
||||||
|
|
||||||
|
|
||||||
|
def test_check_received_files_ng17(init_check_received_files_ng17):
|
||||||
|
"""
|
||||||
|
観点
|
||||||
|
異常系 : 想定外のファイルが受領されている(卸在庫データ取込対象日)
|
||||||
|
期待値
|
||||||
|
例外が発生する
|
||||||
|
"""
|
||||||
|
batch_context = BatchContext.get_instance()
|
||||||
|
batch_context.is_vjsk_stock_import_day = False
|
||||||
|
|
||||||
|
with pytest.raises(BatchOperationException) as e:
|
||||||
|
_check_received_files()
|
||||||
|
|
||||||
|
assert str(e.value).startswith("想定数を超える受領ファイルがあります") > 0
|
||||||
@ -0,0 +1,41 @@
|
|||||||
|
"""vjsk_load用テストフィクスチャoverride"""
|
||||||
|
import os
|
||||||
|
|
||||||
|
import boto3
|
||||||
|
import pytest
|
||||||
|
|
||||||
|
from src.batch.vjsk.vjsk_recv_file_mapper import VjskReceiveFileMapper
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.fixture
|
||||||
|
def s3_client():
|
||||||
|
conn = boto3.client('s3')
|
||||||
|
yield conn
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.fixture
|
||||||
|
def bucket_name():
|
||||||
|
return os.environ["JSKULT_DATA_BUCKET"]
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.fixture
|
||||||
|
def receive_folder():
|
||||||
|
return os.environ["JSKULT_DATA_FOLDER_RECV"]
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.fixture
|
||||||
|
def mapper():
|
||||||
|
return VjskReceiveFileMapper()
|
||||||
|
|
||||||
|
# @pytest.fixture
|
||||||
|
# def init_Load_ok(s3_client, bucket_name, receive_folder):
|
||||||
|
# # setup
|
||||||
|
|
||||||
|
# s3_client.put_object(Bucket=bucket_name,
|
||||||
|
# Key=f'{receive_folder}/stock_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
|
||||||
|
# s3_client.put_object(Bucket=bucket_name,
|
||||||
|
# Key=f'{receive_folder}/slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
|
||||||
|
# s3_client.put_object(Bucket=bucket_name,
|
||||||
|
# Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
|
||||||
|
|
||||||
|
# # teardown
|
||||||
1295
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/test_vjsk_load.py
Normal file
1295
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/test_vjsk_load.py
Normal file
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/UnzipError/bio_slip_data_202304270000.gz
vendored
Normal file
BIN
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/UnzipError/bio_slip_data_202304270000.gz
vendored
Normal file
Binary file not shown.
BIN
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/UnzipError/fcl_mst_202304270000.gz
vendored
Normal file
BIN
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/UnzipError/fcl_mst_202304270000.gz
vendored
Normal file
Binary file not shown.
BIN
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/UnzipError/hld_mst_202304270000.gz
vendored
Normal file
BIN
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/UnzipError/hld_mst_202304270000.gz
vendored
Normal file
Binary file not shown.
BIN
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/UnzipError/lot_num_mst_202304270000.gz
vendored
Normal file
BIN
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/UnzipError/lot_num_mst_202304270000.gz
vendored
Normal file
Binary file not shown.
BIN
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/UnzipError/mdb_conv_mst_202304270000.gz
vendored
Normal file
BIN
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/UnzipError/mdb_conv_mst_202304270000.gz
vendored
Normal file
Binary file not shown.
Binary file not shown.
BIN
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/UnzipError/org_cnv_mst_202304270000.gz
vendored
Normal file
BIN
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/UnzipError/org_cnv_mst_202304270000.gz
vendored
Normal file
Binary file not shown.
BIN
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/UnzipError/phm_prd_mst_202304270000.gz
vendored
Normal file
BIN
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/UnzipError/phm_prd_mst_202304270000.gz
vendored
Normal file
Binary file not shown.
BIN
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/UnzipError/phm_price_mst_202304270000.gz
vendored
Normal file
BIN
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/UnzipError/phm_price_mst_202304270000.gz
vendored
Normal file
Binary file not shown.
BIN
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/UnzipError/slip_data_202304270000.gz
vendored
Normal file
BIN
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/UnzipError/slip_data_202304270000.gz
vendored
Normal file
Binary file not shown.
Binary file not shown.
BIN
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/UnzipError/tran_kbn_mst_202304270000.gz
vendored
Normal file
BIN
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/UnzipError/tran_kbn_mst_202304270000.gz
vendored
Normal file
Binary file not shown.
BIN
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/UnzipError/vop_hco_merge_202304270000.gz
vendored
Normal file
BIN
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/UnzipError/vop_hco_merge_202304270000.gz
vendored
Normal file
Binary file not shown.
Binary file not shown.
BIN
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/UnzipError/whs_mst_202304270000.gz
vendored
Normal file
BIN
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/UnzipError/whs_mst_202304270000.gz
vendored
Normal file
Binary file not shown.
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/bio_slip_data_202304280000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/bio_slip_data_202304280000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"rec_data" "rec_whs_cd" "rec_whs_sub_cd" "rec_whs_org_cd" "rec_cust_cd" "rec_comm_cd" "rec_tran_kbn" "rec_hsdnYmd_wrk" "rec_hsdnYmd_srk" "rec_urag_no" "rec_comm_nm" "rec_nnskFcl_nm" "rec_nnsk_fcl_addr" "rec_lot_num1" "rec_amt1" "rec_lot_num2" "rec_amt2" "rec_lot_num3" "rec_amt3" "rec_ymd" "sale_data_cat" "slip_file_nm" "slip_mgt_no" "row_num" "hsdn_ymd" "exec_dt" "v_tran_cd" "tran_kbn_nm" "whs_org_cd" "v_whsOrg_cd" "whs_org_nm" "whs_org_kn" "v_whs_cd" "whs_nm" "nnsk_cd" "fcl_cd" "fcl_nm" "fcl_kn" "fcl_addr_v" "comm_cd" "comm_nm" "htdnYmd_err_kbn" "prd_exis_kbn" "fcl_exis_kbn" "amt1" "amt2" "amt3" "slip_org_kbn" "bef_slip_mgt_no" "whs_rep_comm_nm" "whs_rep_nnskFcl_nm" "whs_rep_nnsk_fcl_addr" "err_flg1" "err_flg2" "err_flg3" "err_flg4" "err_flg5" "err_flg6" "err_flg7" "err_flg8" "err_flg9" "err_flg10" "err_flg11" "err_flg12" "err_flg13" "err_flg14" "err_flg15" "err_flg16" "err_flg17" "err_flg18" "err_flg19" "err_flg20" "kjyo_ym" "tksNbk_kbn" "fcl_exec_kbn" "rec_sts_kbn" "ins_dt" "ins_usr"
|
||||||
|
"D452960211JD1111311102503851400002304016427519111 496350122バベンチオテンテキ200MG 1V ソウゴウメデイカルニホンコウカンビツクバシ タカサキ 753 BAVB007 000003 000000 000000 " "296" "02" "11JD11113111025" "0385140000" "496350122" "111" "230401" "20230401" "6427519" "バベンチオテンテキ200MG 1V " "ソウゴウメデイカルニホンコウカンビ" "ツクバシ タカサキ 753 " "BAVB007 " "000003" " " "000000" " " "000000" "20230403" "J" "VJSK-BIO_J_MERCK_2023040300.txt" "J2023040300000126" "129" "20230401" "202305082041" "110" "売上" "11JD" "300001370" "川崎南支店" "" "200000007" "アルフレッサ株式会社" "0385140000" "670235967013012526" "医療法人社団こうかん会 日本鋼管病院" "イリョウホウジンシャダンコウカンカイ ニホンコウカンビョウイン" "210-0852 神奈川県川崎市川崎区鋼管通1−2−1" "496350122" "バベンチオ 注射剤 200mg 1VIAL" "" "1" "" "3" "0" "0" "J" "" "" "" "" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "202304" "" "" "0" "23-04-03 20:42:11" "system"
|
||||||
|
"D452960211G11111377452402930640002304016433215111 496300127ゴナ-ルエフヒカチユウペン450 1トウ セコム)オギクボビヨウイン トウキヨウト シブヤク ジングウマエ 1-5-1 GF4C001 000002 000000 000000 " "296" "02" "11G111113774524" "0293064000" "496300127" "111" "230401" "20230401" "6433215" "ゴナ-ルエフヒカチユウペン450 1トウ " "セコム)オギクボビヨウイン " "トウキヨウト シブヤク ジングウマエ 1-5-1 " "GF4C001 " "000002" " " "000000" " " "000000" "20230403" "J" "VJSK-BIO_J_MERCK_2023040300.txt" "J2023040300000127" "130" "20230401" "202305082041" "110" "売上" "11G1" "300001351" "杉並・中野支店" "" "200000007" "アルフレッサ株式会社" "0293064000" "670234652241314835" "医療法人財団荻窪病院 荻窪病院" "イリョウホウジンザイダンオギクボビョウイン オギクボビョウイン" "167-0035 東京都杉並区今川3−1−24" "496300127" "ゴナールエフ 皮下注ペン 450IU 1PEN" "" "1" "" "2" "0" "0" "J" "" "" "" "" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "202304" "" "" "0" "23-04-03 20:42:11" "system"
|
||||||
|
"D452960211V11121120604204799500002304016461276111 496300134ゴナ-ルエフヒカチユウペン900 1トウ ニチイサ-ビスキユウシユウフクオカサンフクオカシ サワラク モモチハマ 1-7-5 7F GF9C002 000010 000000 000000 " "296" "02" "11V111211206042" "0479950000" "496300134" "111" "230401" "20230401" "6461276" "ゴナ-ルエフヒカチユウペン900 1トウ " "ニチイサ-ビスキユウシユウフクオカサン" "フクオカシ サワラク モモチハマ 1-7-5 7F " "GF9C002 " "000010" " " "000000" " " "000000" "20230403" "J" "VJSK-BIO_J_MERCK_2023040300.txt" "J2023040300000128" "131" "20230401" "202305082041" "110" "売上" "11V1" "300001491" "福岡第一支店" "" "200000007" "アルフレッサ株式会社" "0479950000" "670235883412145206" "医療法人社団高邦会 福岡山王病院" "イリョウホウジンシャダンコウホウカイ フクオカサンノウビョウイン" "814-0001 福岡県福岡市早良区百道浜3−6−45" "496300134" "ゴナールエフ 皮下注ペン 900IU 1PEN" "" "1" "" "10" "0" "0" "J" "" "" "" "" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "202304" "" "" "0" "23-04-03 20:42:11" "system"
|
||||||
|
"D452960211JB1121309300202875030002304016523689111 496300127ゴナ-ルエフヒカチユウペン450 1トウ イツカンドウヤツキヨク0561 カワサキシ アサオク フルサワ 172-1 GF4C001 000001 000000 000000 " "296" "02" "11JB11213093002" "0287503000" "496300127" "111" "230401" "20230401" "6523689" "ゴナ-ルエフヒカチユウペン450 1トウ " "イツカンドウヤツキヨク0561 " "カワサキシ アサオク フルサワ 172-1 " "GF4C001 " "000001" " " "000000" " " "000000" "20230403" "J" "VJSK-BIO_J_MERCK_2023040300.txt" "J2023040300000129" "132" "20230401" "202305082041" "110" "売上" "11JB" "300001369" "川崎北支店" "" "200000007" "アルフレッサ株式会社" "0287503000" "670237078008644636" "株式会社キリン堂 一貫堂薬局" "カブシキガイシャキリンドウ イッカンドウヤッキョク" "215-0026 神奈川県川崎市麻生区古沢172−1" "496300127" "ゴナールエフ 皮下注ペン 450IU 1PEN" "" "1" "" "1" "0" "0" "J" "" "" "" "" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "202304" "" "" "0" "23-04-03 20:42:11" "system"
|
||||||
|
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/bio_slip_data_202304290000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/bio_slip_data_202304290000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"rec_data" "rec_whs_cd" "rec_whs_sub_cd" "rec_whs_org_cd" "rec_cust_cd" "rec_comm_cd" "rec_tran_kbn" "rec_hsdnYmd_wrk" "rec_hsdnYmd_srk" "rec_urag_no" "rec_comm_nm" "rec_nnskFcl_nm" "rec_nnsk_fcl_addr" "rec_lot_num1" "rec_amt1" "rec_lot_num2" "rec_amt2" "rec_lot_num3" "rec_amt3" "rec_ymd" "sale_data_cat" "slip_file_nm" "slip_mgt_no" "row_num" "hsdn_ymd" "exec_dt" "v_tran_cd" "tran_kbn_nm" "whs_org_cd" "v_whsOrg_cd" "whs_org_nm" "whs_org_kn" "v_whs_cd" "whs_nm" "nnsk_cd" "fcl_cd" "fcl_nm" "fcl_kn" "fcl_addr_v" "comm_cd" "comm_nm" "htdnYmd_err_kbn" "prd_exis_kbn" "fcl_exis_kbn" "amt1" "amt2" "amt3" "slip_org_kbn" "bef_slip_mgt_no" "whs_rep_comm_nm" "whs_rep_nnskFcl_nm" "whs_rep_nnsk_fcl_addr" "err_flg1" "err_flg2" "err_flg3" "err_flg4" "err_flg5" "err_flg6" "err_flg7" "err_flg8" "err_flg9" "err_flg10" "err_flg11" "err_flg12" "err_flg13" "err_flg14" "err_flg15" "err_flg16" "err_flg17" "err_flg18" "err_flg19" "err_flg20" "kjyo_ym" "tksNbk_kbn" "fcl_exec_kbn" "rec_sts_kbn" "ins_dt" "ins_usr"
|
||||||
|
"D452960211V11121120604204799500002304016461276111 496300134ゴナ-ルエフヒカチユウペン900 1トウ ニチイサ-ビスキユウシユウフクオカサンフクオカシ サワラク モモチハマ 1-7-5 7F GF9C002 000010 000000 000000 " "296" "02" "11V111211206042" "0479950000" "496300134" "111" "230401" "20230401" "6461276" "ゴナ-ルエフヒカチユウペン900 1トウ " "ニチイサ-ビスキユウシユウフクオカサン" "フクオカシ サワラク モモチハマ 1-7-5 7F " "GF9C002 " "000010" " " "000000" " " "000000" "20230403" "J" "VJSK-BIO_J_MERCK_2023040300.txt" "J2023040300000128" "131" "20230401" "202305082041" "110" "売上" "11V1" "300001491" "福岡第一支店" "" "200000007" "アルフレッサ株式会社" "0479950000" "670235883412145206" "医療法人社団高邦会 福岡山王病院" "イリョウホウジンシャダンコウホウカイ フクオカサンノウビョウイン" "814-0001 福岡県福岡市早良区百道浜3−6−45" "496300134" "ゴナールエフ 皮下注ペン 900IU 1PEN" "" "1" "" "10" "0" "0" "J" "" "" "" "" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "202304" "" "" "0" "23-04-03 20:42:11" "system"
|
||||||
|
"D452960211JB1121309300202875030002304016523689111 496300127ゴナ-ルエフヒカチユウペン450 1トウ イツカンドウヤツキヨク0561 カワサキシ アサオク フルサワ 172-1 GF4C001 000001 000000 000000 " "296" "02" "11JB11213093002" "0287503000" "496300127" "111" "230401" "20230401" "6523689" "ゴナ-ルエフヒカチユウペン450 1トウ " "イツカンドウヤツキヨク0561 " "カワサキシ アサオク フルサワ 172-1 " "GF4C001 " "000001" " " "000000" " " "000000" "20230403" "J" "VJSK-BIO_J_MERCK_2023040300.txt" "J2023040300000129" "132" "20230401" "202305082041" "110" "売上" "11JB" "300001369" "川崎北支店" "" "200000007" "アルフレッサ株式会社" "0287503000" "670237078008644636" "株式会社キリン堂 一貫堂薬局" "カブシキガイシャキリンドウ イッカンドウヤッキョク" "215-0026 神奈川県川崎市麻生区古沢172−1" "496300127" "ゴナールエフ 皮下注ペン 450IU 1PEN" "" "1" "" "1" "0" "0" "J" "" "" "" "" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "202304" "" "" "0" "23-04-03 20:42:11" "system"
|
||||||
|
"D4529602K1201130032696508657140002304016527757111 496300110ゴナ-ルエフヒカチユウペン300 1トウ モリノクスリヤヤツキヨク オキナワケン シマジリグン ヤエセチヨウ ヤギバル 238-1 GF3B013 000005 000000 000000 " "296" "02" "K12011300326965" "0865714000" "496300110" "111" "230401" "20230401" "6527757" "ゴナ-ルエフヒカチユウペン300 1トウ " "モリノクスリヤヤツキヨク " "オキナワケン シマジリグン ヤエセチヨウ ヤギバル 238-1 " "GF3B013 " "000005" " " "000000" " " "000000" "20230403" "J" "VJSK-BIO_J_MERCK_2023040300.txt" "J2023040300000130" "133" "20230401" "202305082041" "110" "売上" "K120" "300006583" "沖縄第二営業部" "" "200000007" "アルフレッサ株式会社" "0865714000" "670232348519842842" "有限会社吾妻サンライズ 森の薬屋薬局" "ユウゲンガイシャアガツマサンライズ モリノクスリヤヤッキョク" "901-0406 沖縄県島尻郡八重瀬町屋宜原238−1" "496300110" "ゴナールエフ 皮下注ペン 300IU 1PEN" "" "1" "" "5" "0" "0" "J" "" "" "" "" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "202304" "" "" "0" "23-04-03 20:42:11" "system"
|
||||||
|
"D4529602K1201130032696508657140002304016527757111 496300127ゴナ-ルエフヒカチユウペン450 1トウ モリノクスリヤヤツキヨク オキナワケン シマジリグン ヤエセチヨウ ヤギバル 238-1 GF4B011 000010 000000 000000 " "296" "02" "K12011300326965" "0865714000" "496300127" "111" "230401" "20230401" "6527757" "ゴナ-ルエフヒカチユウペン450 1トウ " "モリノクスリヤヤツキヨク " "オキナワケン シマジリグン ヤエセチヨウ ヤギバル 238-1 " "GF4B011 " "000010" " " "000000" " " "000000" "20230403" "J" "VJSK-BIO_J_MERCK_2023040300.txt" "J2023040300000131" "134" "20230401" "202305082041" "110" "売上" "K120" "300006583" "沖縄第二営業部" "" "200000007" "アルフレッサ株式会社" "0865714000" "670232348519842842" "有限会社吾妻サンライズ 森の薬屋薬局" "ユウゲンガイシャアガツマサンライズ モリノクスリヤヤッキョク" "901-0406 沖縄県島尻郡八重瀬町屋宜原238−1" "496300127" "ゴナールエフ 皮下注ペン 450IU 1PEN" "" "1" "" "10" "0" "0" "J" "" "" "" "" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "202304" "" "" "0" "23-04-03 20:42:11" "system"
|
||||||
|
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/fcl_mst_202304280000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/fcl_mst_202304280000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"fcl_cd" "sub_no" "start_dt" "end_dt" "closed_dt" "nm" "kn_nm" "sht_nm" "sht_kn_nm" "mkr_cd" "jsk_proc_kbn" "fmt_addr" "fmt_kn_addr" "post_cd" "prft_cd" "prft_nm" "city_nm" "addr_line_1" "tel_no" "admin_kbn" "fcl_type" "rec_sts_kbn" "ins_dt" "upd_dt"
|
||||||
|
"670229430760653825" "0" "20000101" "99991231" "" "駅前町歯科診療所" "エキマエチョウシカシンリョウジョ" "駅前町歯科診療所" "エキマエチョウシカシンリョウジョ" "" "0" "700-0023 岡山県岡山市北区駅前町1−6−20" "オカヤマケン オカヤマシキタク エキマエチョウ1-6-20" "700-0023" "33" "岡山県" "岡山市北区" "駅前町1−6−20" "0862236468" "33101" "30" "1" "" ""
|
||||||
|
"670229435466662922" "0" "20000101" "99991231" "" "医療法人社団仁卓会 ほりかわ歯科クリニック" "イリョウホウジンシャダンジンタクカイ ホリカワシカクリニック" "ほりかわ歯科クリニック (医社)" "ホリカワシカクリニック (イシャ)" "" "0" "675-0101 兵庫県加古川市平岡町新在家1573−1−4F" "ヒョウゴケン カコガワシ ヒラオカチョウシンザイケ1573-1-4F" "675-0101" "28" "兵庫県" "加古川市" "平岡町新在家1573−1−4F" "0794244617" "28210" "30" "1" "" ""
|
||||||
|
"670229435785430019" "0" "20000101" "99991231" "" "株式会社コミュニティメディカル なつめ薬局 千歳船橋店" "カブシキガイシャコミュニティメディカル ナツメヤッキョク チトセフナバシテン" "なつめ薬局 千歳船橋店 (株)" "ナツメヤッキョク チトセフナバシテン (カ)" "" "0" "156-0054 東京都世田谷区桜丘2−24−2" "トウキョウト セタガヤク サクラガオカ2-24-2" "156-0054" "13" "東京都" "世田谷区" "桜丘2−24−2" "0364136189" "13112" "20" "1" "" ""
|
||||||
|
"670229447437206529" "0" "20000101" "20230407" "2023-04-07" "ヒカリ薬局" "ヒカリヤッキョク" "ヒカリ薬局" "ヒカリヤッキョク" "" "0" "670-0955 兵庫県姫路市安田4−47−8−1F" "ヒョウゴケン ヒメジシ ヤスダ4-47-8-1F" "670-0955" "28" "兵庫県" "姫路市" "安田4−47−8−1F" "0792846396" "28201" "20" "1" "" ""
|
||||||
|
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/fcl_mst_202304290000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/fcl_mst_202304290000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"fcl_cd" "sub_no" "start_dt" "end_dt" "closed_dt" "nm" "kn_nm" "sht_nm" "sht_kn_nm" "mkr_cd" "jsk_proc_kbn" "fmt_addr" "fmt_kn_addr" "post_cd" "prft_cd" "prft_nm" "city_nm" "addr_line_1" "tel_no" "admin_kbn" "fcl_type" "rec_sts_kbn" "ins_dt" "upd_dt"
|
||||||
|
"670229435785430019" "0" "20000202" "99991231" "" "株式会社コミュニティメディカル なつめ薬局 千歳船橋店" "カブシキガイシャコミュニティメディカル ナツメヤッキョク チトセフナバシテン" "なつめ薬局 千歳船橋店 (株)" "ナツメヤッキョク チトセフナバシテン (カ)" "" "0" "156-0054 東京都世田谷区桜丘2−24−2" "トウキョウト セタガヤク サクラガオカ2-24-2" "156-0054" "13" "東京都" "世田谷区" "桜丘2−24−2" "0364136189" "13112" "20" "1" "" ""
|
||||||
|
"670229447437206529" "0" "20000202" "20230407" "2023-04-07" "ヒカリ薬局" "ヒカリヤッキョク" "ヒカリ薬局" "ヒカリヤッキョク" "" "0" "670-0955 兵庫県姫路市安田4−47−8−1F" "ヒョウゴケン ヒメジシ ヤスダ4-47-8-1F" "670-0955" "28" "兵庫県" "姫路市" "安田4−47−8−1F" "0792846396" "28201" "20" "1" "" ""
|
||||||
|
"670229463350395910" "0" "20000101" "99991231" "" "こうだ歯科" "コウダシカ" "こうだ歯科" "コウダシカ" "" "0" "770-0831 徳島県徳島市寺島本町西1−10" "トクシマケン トクシマシ テラシマホンチョウニシ1-10" "770-0831" "36" "徳島県" "徳島市" "寺島本町西1−10" "0886552625" "36201" "30" "1" "" ""
|
||||||
|
"670229489380246545" "0" "20020521" "99991231" "" "社会医療法人社団埼玉巨樹の会 狭山中央病院" "シャカイイリョウホウジンシャダンサイタマキョジュノカイ サヤマチュウオウビョウイン" "狭山中央病院 (社社)" "サヤマチュウオウビョウイン (シャシャ)" "" "0" "350-1306 埼玉県狭山市富士見2−19−35" "サイタマケン サヤマシ フジミ2-19-35" "350-1306" "11" "埼玉県" "狭山市" "富士見2−19−35" "0429597111" "11215" "10" "1" "" ""
|
||||||
|
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/hld_mst_202304280000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/hld_mst_202304280000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"v_hld_cd" "sub_no" "nm" "kn_nm" "sht_nm" "start_dt" "end_dt" "dsp_odr" "rec_sts_kbn" "ins_dt" "upd_dt"
|
||||||
|
"10001" "1" "卸ホールディングス名01-1" "オロシホールディングスメイ01-1" "卸名01-1" "20230101" "99991231" "1" "0" "23-05-09 12:00:01" "23-05-09 13:00:01"
|
||||||
|
"10001" "2" "卸ホールディングス名01-2" "オロシホールディングスメイ01-2" "卸名01-2" "20230102" "99991231" "1" "0" "23-05-09 12:00:02" "23-05-09 13:00:02"
|
||||||
|
"10001" "3" "卸ホールディングス名01-3" "オロシホールディングスメイ01-3" "卸名01-3" "20230103" "99991231" "1" "0" "23-05-09 12:00:03" "23-05-09 13:00:03"
|
||||||
|
"10001" "4" "卸ホールディングス名01-4" "オロシホールディングスメイ01-4" "卸名01-4" "20230104" "99991231" "1" "0" "23-05-09 12:00:04" "23-05-09 13:00:04"
|
||||||
|
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/hld_mst_202304290000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/hld_mst_202304290000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"v_hld_cd" "sub_no" "nm" "kn_nm" "sht_nm" "start_dt" "end_dt" "dsp_odr" "rec_sts_kbn" "ins_dt" "upd_dt"
|
||||||
|
"10001" "3" "卸ホールディングス名01-3" "オロシホールディングスメイ01-3" "卸名01-3" "20230101" "99991231" "1" "0" "23-05-09 12:00:03" "23-05-09 13:00:03"
|
||||||
|
"10001" "4" "卸ホールディングス名01-4" "オロシホールディングスメイ01-4" "卸名01-4" "20230102" "99991231" "1" "0" "23-05-09 12:00:04" "23-05-09 13:00:04"
|
||||||
|
"10001" "5" "卸ホールディングス名01-5" "オロシホールディングスメイ01-5" "卸名01-5" "20230103" "99991231" "1" "0" "23-05-09 12:00:05" "23-05-09 13:00:05"
|
||||||
|
"10002" "1" "卸ホールディングス名02-1" "オロシホールディングスメイ02-1" "卸名01-1" "20230104" "99991231" "1" "0" "23-05-09 12:00:06" "23-05-09 13:00:06"
|
||||||
|
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/lot_num_mst_202304280000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/lot_num_mst_202304280000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"ser_no" "lot_num" "expr_dt" "frst_mov_dt" "ins_dt" "ins_usr"
|
||||||
|
"F0110601" "BAVA001" "20230331" "20210510" "23-05-08 20:40:41" "batch"
|
||||||
|
"F0110601" "BAVA002" "20230331" "20210615" "23-05-08 20:40:41" "batch"
|
||||||
|
"F0110601" "BAVA003" "20231031" "20210719" "23-05-08 20:40:41" "batch"
|
||||||
|
"F0110601" "BAVA004" "20231031" "20210823" "23-05-08 20:40:41" "batch"
|
||||||
|
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/lot_num_mst_202304290000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/lot_num_mst_202304290000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"ser_no" "lot_num" "expr_dt" "frst_mov_dt" "ins_dt" "ins_usr"
|
||||||
|
"F0110601" "BAVA003" "20231031" "20210719" "23-05-08 20:40:41" "batch"
|
||||||
|
"F0110601" "BAVA004" "20231031" "20210823" "23-05-08 20:40:41" "batch"
|
||||||
|
"F0110601" "BAVA005" "20231031" "20210927" "23-05-08 20:40:41" "batch"
|
||||||
|
"F0110601" "BAVA006" "20240131" "20211025" "23-05-08 20:40:41" "batch"
|
||||||
|
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/mdb_conv_mst_202304280000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/mdb_conv_mst_202304280000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"hco_vid__v" "sub_no" "mdb_cd" "reliability" "start_dt" "rec_sts_kbn" "ins_dt" "upd_dt"
|
||||||
|
"670229780011959315" "1" "003410424" "0" "20020601" "0" "22-03-09 13:56:19" "22-03-09 13:56:19"
|
||||||
|
"670230081112654862" "0" "004101420" "0" "20000101" "9" "17-10-17 17:06:52" "22-03-09 14:17:34"
|
||||||
|
"670230081112654862" "1" "004104997" "2" "20000101" "0" "22-03-09 14:17:33" "22-03-09 14:17:33"
|
||||||
|
"670230100414841865" "0" "003622111" "3" "20000101" "9" "17-10-17 17:06:52" "22-03-09 14:13:49"
|
||||||
|
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/mdb_conv_mst_202304290000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/mdb_conv_mst_202304290000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"hco_vid__v" "sub_no" "mdb_cd" "reliability" "start_dt" "rec_sts_kbn" "ins_dt" "upd_dt"
|
||||||
|
"670230081112654862" "1" "004104997" "0" "20000101" "0" "22-03-09 14:17:33" "22-03-09 14:17:33"
|
||||||
|
"670230100414841865" "0" "003622111" "0" "20000101" "9" "17-10-17 17:06:52" "22-03-09 14:13:49"
|
||||||
|
"670230100414841865" "1" "003636480" "0" "20000101" "0" "22-03-09 14:13:49" "22-03-09 14:13:49"
|
||||||
|
"670230330673742853" "0" "004804003" "0" "20000101" "9" "17-10-17 17:06:52" "22-03-09 15:20:35"
|
||||||
|
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/mkr_org_horizon_202304280000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/mkr_org_horizon_202304280000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"vid_kind_1" "v_cd_1" "nm_1" "dsp_odr_1" "vid_kind_2" "v_cd_2" "nm_2" "dsp_odr_2" "vid_kind_3" "v_cd_3" "nm_3" "dsp_odr_3" "vid_kind_4" "v_cd_4" "nm_4" "dsp_odr_4" "vid_kind_5" "v_cd_5" "nm_5" "dsp_odr_5" "vid_kind_6" "v_cd_6" "nm_6" "dsp_odr_6" "vid_kind_7" "v_cd_7" "nm_7" "dsp_odr_7" "vid_kind_8" "v_cd_8" "nm_8" "dsp_odr_8" "vid_kind_9" "v_cd_9" "nm_9" "dsp_odr_9" "vid_kind_10" "v_cd_10" "nm_10" "dsp_odr_10" "v_whs_cd" "start_dt" "end_dt" "rec_sts_kbn" "ins_dt" "upd_dt"
|
||||||
|
"3" "300003202" "その他営業本部卸" "0" "3" "300003217" "試薬岐阜(回収)" "0" "3" "300003217" "試薬岐阜(回収)" "0" "3" "300003217" "試薬岐阜(回収)" "0" "3" "300003217" "試薬岐阜(回収)" "0" "3" "300003217" "試薬岐阜(回収)" "0" "3" "300003217" "試薬岐阜(回収)" "0" "3" "300003217" "試薬岐阜(回収)" "0" "3" "300003217" "試薬岐阜(回収)" "0" "3" "300003217" "試薬岐阜(回収)" "0" "200000007" "20190401" "99991231" "0" "19-04-11 11:30:59" "23-04-12 17:52:38"
|
||||||
|
"3" "300003138" "北関東甲信越営業本部" "0" "3" "300003195" "首都圏移管組織" "0" "3" "300003195" "首都圏移管組織" "0" "3" "300003195" "首都圏移管組織" "0" "3" "300003195" "首都圏移管組織" "0" "3" "300003195" "首都圏移管組織" "0" "3" "300003195" "首都圏移管組織" "0" "3" "300003195" "首都圏移管組織" "0" "3" "300003195" "首都圏移管組織" "0" "3" "300003195" "首都圏移管組織" "0" "200000007" "20190401" "99991231" "0" "19-04-11 11:30:59" "23-04-12 17:52:38"
|
||||||
|
"3" "300003202" "その他営業本部卸" "0" "3" "300003226" "大垣(回収)" "0" "3" "300003226" "大垣(回収)" "0" "3" "300003226" "大垣(回収)" "0" "3" "300003226" "大垣(回収)" "0" "3" "300003226" "大垣(回収)" "0" "3" "300003226" "大垣(回収)" "0" "3" "300003226" "大垣(回収)" "0" "3" "300003226" "大垣(回収)" "0" "3" "300003226" "大垣(回収)" "0" "200000007" "20190401" "99991231" "0" "19-04-11 11:30:59" "23-04-12 17:52:38"
|
||||||
|
"a" "300003144" "メディカル営業本部1" "1" "b" "300003202" "東海スタッフ医療2" "2" "c" "300003203" "東海スタッフ医療3" "3" "d" "300003204" "東海スタッフ医療4" "4" "e" "300003205" "東海スタッフ医療5" "5" "f" "300003206" "東海スタッフ医療6" "6" "g" "300003207" "東海スタッフ医療7" "7" "h" "300003208" "東海スタッフ医療8" "8" "i" "300003209" "東海スタッフ医療9" "9" "j" "300003210" "東海スタッフ医療10" "10" "200000007" "20190401" "99991231" "0" "19-04-11 11:30:59" "23-04-12 17:52:38"
|
||||||
|
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/mkr_org_horizon_202304290000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/mkr_org_horizon_202304290000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"vid_kind_1" "v_cd_1" "nm_1" "dsp_odr_1" "vid_kind_2" "v_cd_2" "nm_2" "dsp_odr_2" "vid_kind_3" "v_cd_3" "nm_3" "dsp_odr_3" "vid_kind_4" "v_cd_4" "nm_4" "dsp_odr_4" "vid_kind_5" "v_cd_5" "nm_5" "dsp_odr_5" "vid_kind_6" "v_cd_6" "nm_6" "dsp_odr_6" "vid_kind_7" "v_cd_7" "nm_7" "dsp_odr_7" "vid_kind_8" "v_cd_8" "nm_8" "dsp_odr_8" "vid_kind_9" "v_cd_9" "nm_9" "dsp_odr_9" "vid_kind_10" "v_cd_10" "nm_10" "dsp_odr_10" "v_whs_cd" "start_dt" "end_dt" "rec_sts_kbn" "ins_dt" "upd_dt"
|
||||||
|
"3" "300003202" "その他営業本部卸" "0" "3" "300003226" "大垣(回収)" "0" "3" "300003226" "大垣(回収)" "0" "3" "300003226" "大垣(回収)" "0" "3" "300003226" "大垣(回収)" "0" "3" "300003226" "大垣(回収)" "0" "3" "300003226" "大垣(回収)" "0" "3" "300003226" "大垣(回収)" "0" "3" "300003226" "大垣(回収)" "0" "3" "300003226" "大垣(回収)" "0" "200000007" "20190401" "99991231" "0" "19-04-11 11:30:59" "23-04-12 17:52:38"
|
||||||
|
"3" "300003144" "メディカル営業本部" "0" "3" "300003201" "東海スタッフ医療" "0" "3" "300003201" "東海スタッフ医療" "0" "3" "300003201" "東海スタッフ医療" "0" "3" "300003201" "東海スタッフ医療" "0" "3" "300003201" "東海スタッフ医療" "0" "3" "300003201" "東海スタッフ医療" "0" "3" "300003201" "東海スタッフ医療" "0" "3" "300003201" "東海スタッフ医療" "0" "3" "300003201" "東海スタッフ医療" "0" "200000007" "20190401" "99991231" "0" "19-04-11 11:30:59" "23-04-12 17:52:38"
|
||||||
|
"3" "300003202" "その他営業本部卸" "0" "3" "300003224" "岐阜第二(回収)" "0" "3" "300003224" "岐阜第二(回収)" "0" "3" "300003224" "岐阜第二(回収)" "0" "3" "300003224" "岐阜第二(回収)" "0" "3" "300003224" "岐阜第二(回収)" "0" "3" "300003224" "岐阜第二(回収)" "0" "3" "300003224" "岐阜第二(回収)" "0" "3" "300003224" "岐阜第二(回収)" "0" "3" "300003224" "岐阜第二(回収)" "0" "200000007" "20190401" "99991231" "0" "19-04-11 11:30:59" "23-04-12 17:52:38"
|
||||||
|
"3" "300003143" "医薬営業統括本部" "0" "3" "300003196" "医薬その他" "0" "3" "300003196" "医薬その他" "0" "3" "300003196" "医薬その他" "0" "3" "300003196" "医薬その他" "0" "3" "300003196" "医薬その他" "0" "3" "300003196" "医薬その他" "0" "3" "300003196" "医薬その他" "0" "3" "300003196" "医薬その他" "0" "3" "300003196" "医薬その他" "0" "200000007" "20190401" "20190930" "0" "19-04-11 11:30:59" "23-04-12 17:52:38"
|
||||||
|
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/org_cnv_mst_202304280000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/org_cnv_mst_202304280000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"whs_cd" "whs_sub_cd" "org_cd" "sub_no" "v_org_cd" "start_dt" "end_dt" "dsp_odr" "rec_sts_kbn" "ins_dt" "upd_dt"
|
||||||
|
"042" "01" "361007" "0" "300006657" "20230401" "99991231" "0" "0" "23-04-12 11:24:06" "23-04-12 11:24:06"
|
||||||
|
"042" "01" "381207" "0" "300006658" "20230401" "99991231" "0" "0" "23-04-12 11:24:27" "23-04-12 11:24:27"
|
||||||
|
"080" "00" "02780" "0" "300006526" "20220401" "99991231" "0" "9" "22-04-11 15:57:35" "23-04-12 10:46:48"
|
||||||
|
"080" "00" "02780" "1" "300006526" "20220401" "20230331" "0" "0" "23-04-12 10:46:48" "23-04-12 10:46:48"
|
||||||
|
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/org_cnv_mst_202304290000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/org_cnv_mst_202304290000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"whs_cd" "whs_sub_cd" "org_cd" "sub_no" "v_org_cd" "start_dt" "end_dt" "dsp_odr" "rec_sts_kbn" "ins_dt" "upd_dt"
|
||||||
|
"080" "00" "02780" "0" "300006526" "20220401" "99991231" "0" "9" "22-04-11 15:57:35" "23-04-12 10:46:48"
|
||||||
|
"080" "00" "02780" "1" "300006526" "20220401" "20230331" "0" "0" "23-04-12 10:46:48" "23-04-12 10:46:48"
|
||||||
|
"080" "00" "21807" "2" "300006649" "20230401" "99991231" "0" "0" "23-04-12 10:49:23" "23-04-12 10:49:23"
|
||||||
|
"080" "00" "25110" "0" "300005251" "20000101" "99991231" "0" "9" "21-03-11 14:59:47" "23-04-12 10:47:42"
|
||||||
|
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/phm_prd_mst_202304280000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/phm_prd_mst_202304280000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"prd_cd" "sub_no" "prd_nm" "prd_e_nm" "mkr_cd" "mkr_inf_1" "mkr_inf_2" "phm_itm_cd" "itm_nm" "itm_sht_nm" "form_cd" "form_nm" "vol_cd" "vol_nm" "cont_cd" "cont_nm" "pkg_cd" "pkg_nm" "cnv_num" "jsk_start_dt" "prd_sale_kbn" "jsk_proc_kbn" "start_dt" "end_dt" "dsp_odr" "rec_sts_kbn" "ins_dt" "upd_dt"
|
||||||
|
"496201110" "0" "セロフェン 錠剤 50mg 30TAB" "" "F21206A0" "セロフェン 錠 50MG" "SEROPHENE TAB. 50 MG. (30)" "001" "セロフェン" "SP" "F003" "錠剤" "0000" "" "V009" "50mg" "P007" "30TAB" "30" "" "0" "0" "20080101" "20190930" "140" "0" "17-11-08 16:52:41" "19-09-19 11:42:45"
|
||||||
|
"496201127" "0" "セロフェン 錠剤 50mg 30TAB" "" "F21206A0" "セロフェン 錠 50MG" "SEROPHENE TAB. 50 MG. (30)" "001" "セロフェン" "SP" "F003" "錠剤" "0000" "" "V009" "50mg" "P007" "30TAB" "30" "" "0" "0" "20070401" "20190930" "150" "0" "17-11-08 16:52:41" "19-09-19 11:42:45"
|
||||||
|
"496300110" "2" "ゴナールエフ 皮下注ペン 300IU 1PEN" "" "F1990608" "ゴナールエフ皮下注ペン 300" "GONAL-F PEN 300IU (1) - JPN" "005" "セロスティム" "ST" "F005" "皮下注ペン" "0000" "" "V017" "300IU" "P011" "1PEN" "1" "" "0" "0" "20190501" "20190930" "100" "9" "19-04-23 16:35:36" "19-04-23 16:40:38"
|
||||||
|
"496300127" "2" "ゴナールエフ 皮下注ペン 450IU 1PEN" "" "F19D0608" "ゴナールエフ皮下注ペン450" "Gonalef Pen 450 (1)" "008" "BDマイクロファインプラス" "MF" "F005" "皮下注ペン" "0000" "" "V018" "450IU" "P011" "1PEN" "1" "" "0" "0" "20190501" "20190930" "120" "9" "19-04-23 16:37:10" "19-04-23 16:40:54"
|
||||||
|
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/phm_prd_mst_202304290000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/phm_prd_mst_202304290000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"prd_cd" "sub_no" "prd_nm" "prd_e_nm" "mkr_cd" "mkr_inf_1" "mkr_inf_2" "phm_itm_cd" "itm_nm" "itm_sht_nm" "form_cd" "form_nm" "vol_cd" "vol_nm" "cont_cd" "cont_nm" "pkg_cd" "pkg_nm" "cnv_num" "jsk_start_dt" "prd_sale_kbn" "jsk_proc_kbn" "start_dt" "end_dt" "dsp_odr" "rec_sts_kbn" "ins_dt" "upd_dt"
|
||||||
|
"496300110" "2" "ゴナールエフ 皮下注ペン 300IU 1PEN" "" "F1990608" "ゴナールエフ皮下注ペン 300" "GONAL-F PEN 300IU (1) - JPN" "005" "セロスティム" "ST" "F005" "皮下注ペン" "0000" "" "V017" "300IU" "P011" "1PEN" "1" "20230601" "0" "0" "20190501" "20190930" "100" "9" "19-04-23 16:35:36" "19-04-23 16:40:38"
|
||||||
|
"496300127" "2" "ゴナールエフ 皮下注ペン 450IU 1PEN" "" "F19D0608" "ゴナールエフ皮下注ペン450" "Gonalef Pen 450 (1)" "008" "BDマイクロファインプラス" "MF" "F005" "皮下注ペン" "0000" "" "V018" "450IU" "P011" "1PEN" "1" "20230602" "0" "0" "20190501" "20190930" "120" "9" "19-04-23 16:37:10" "19-04-23 16:40:54"
|
||||||
|
"496300134" "2" "ゴナールエフ 皮下注ペン 900IU 1PEN" "" "F19B0608" "ゴナールエフ皮下注ペン900" "Gonalef Pen 900 (1)" "008" "BDマイクロファインプラス" "MF" "F005" "皮下注ペン" "0000" "" "V019" "900IU" "P011" "1PEN" "1" "20230603" "0" "0" "20190501" "20190930" "110" "9" "19-04-23 16:38:36" "19-04-23 16:41:05"
|
||||||
|
"496301315" "0" "プロファシー 注射剤 5000IU 10VIAL" "" "F47706A0" "プロファシー 注 5000IU" "PROFASI M AMP. 5000 IU (10)" "002" "プロファシー" "PF" "F002" "注射剤" "0000" "" "V020" "5000IU" "P005" "10VIAL" "10" "20230604" "0" "0" "20070401" "20190930" "160" "0" "17-11-08 16:52:41" "19-09-19 11:42:45"
|
||||||
|
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/phm_price_mst_202304280000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/phm_price_mst_202304280000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"phm_prd_cd" "phm_price_kind" "sub_no" "price" "start_dt" "end_dt" "dsp_odr" "rec_sts_kbn" "ins_dt" "upd_dt"
|
||||||
|
"114430502" "01" "2" "10060.2" "20180401" "20190930" "10" "0" "18-03-07 09:33:37" "19-09-19 11:23:47"
|
||||||
|
"114430502" "01" "3" "10237.2" "20191001" "99991231" "10" "0" "19-09-19 11:24:05" "19-09-19 11:24:05"
|
||||||
|
"114430502" "03" "2" "100602" "20180401" "20190930" "30" "0" "18-03-07 09:39:48" "19-09-19 11:23:47"
|
||||||
|
"114430502" "03" "3" "102372" "20191001" "99991231" "30" "0" "19-09-19 11:24:05" "19-09-19 11:24:05"
|
||||||
|
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/phm_price_mst_202304290000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/phm_price_mst_202304290000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"phm_prd_cd" "phm_price_kind" "sub_no" "price" "start_dt" "end_dt" "dsp_odr" "rec_sts_kbn" "ins_dt" "upd_dt"
|
||||||
|
"114430502" "03" "2" "100602" "20180401" "20190930" "30" "0" "18-03-07 09:39:48" "19-09-19 11:23:47"
|
||||||
|
"114430502" "03" "3" "102372" "20191001" "99991231" "30" "0" "19-09-19 11:24:05" "19-09-19 11:24:05"
|
||||||
|
"114430601" "01" "2" "12362.4" "20180401" "20190930" "10" "0" "18-03-07 09:48:00" "19-09-19 11:23:47"
|
||||||
|
"114430601" "01" "3" "12587.8" "20191001" "99991231" "10" "0" "19-09-19 11:24:05" "19-09-19 11:24:05"
|
||||||
|
3
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/phm_price_mst_dataerror.tsv
vendored
Normal file
3
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/phm_price_mst_dataerror.tsv
vendored
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
"phm_prd_cd" "phm_price_kind" "sub_no" "price" "start_dt" "end_dt" "dsp_odr" "rec_sts_kbn" "ins_dt" "upd_dt"
|
||||||
|
"123456701" "01" "1" "12345.6" "yyyy0401" "20190930" "10" "0" "18-03-07 09:48:00" "19-09-19 11:23:47"
|
||||||
|
"123456701" "02" "1" "12587.8" "20191001" "99991231" "10" "0" "19-09-19 11:24:05" "19-09-19 11:24:05"
|
||||||
|
2
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/phm_price_mst_formaterror.tsv
vendored
Normal file
2
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/phm_price_mst_formaterror.tsv
vendored
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
"phm_prd_cd" "phm_price_kind" "sub_no" "price" "start_dt" "end_dt" "dsp_odr" "rec_sts_kbn" "ins_dt" "upd_dt"
|
||||||
|
"123456701" "01" "1" "12345.6" "202304
|
||||||
|
Can't render this file because it contains an unexpected character in line 2 and column 39.
|
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/slip_data_202304280000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/slip_data_202304280000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"recvdata" "rec_whs_cd" "rec_whs_sub_cd" "rec_whs_org_cd" "rec_cust_cd" "rec_comm_cd" "rec_tran_kbn" "rev_hsdnYmd_wrk" "rev_hsdnYmd_srk" "rec_urag_no" "rec_amt" "rec_unit_price" "rec_price" "rec_comm_nm" "rec_nnskFcl_nm" "free_item" "rec_nnsk_fcl_addr" "rec_nnsk_fcl_post" "rec_nnsk_fcl_tel" "rec_bef_hsdn_ymd" "rec_bef_slip_no" "rec_ymd" "sale_data_cat" "slip_file_nm" "slip_mgt_no" "row_num" "hsdn_ymd" "exec_dt" "v_tran_cd" "tran_kbn_nm" "whs_org_cd" "v_whsOrg_cd" "whs_org_nm" "whs_org_kn" "v_whs_cd" "whs_nm" "nnsk_cd" "fcl_cd" "fcl_kn" "fcl_nm" "fcl_addr_v" "comm_cd" "comm_nm" "nn_amt" "nn_unitPrice" "nn_price" "unit_price" "unit_amt" "drag_price" "drag_amt" "whsPos_err_kbn" "htdnYmd_err_kbn" "prd_exis_kbn" "fcl_exis_kbn" "bef_hsdn_ymd" "bef_slip_no" "slip_org_kbn" "err_flg1" "err_flg2" "err_flg3" "err_flg4" "err_flg5" "err_flg6" "err_flg7" "err_flg8" "err_flg9" "err_flg10" "err_flg11" "err_flg12" "err_flg13" "err_flg14" "err_flg15" "err_flg16" "err_flg17" "err_flg18" "err_flg19" "err_flg20" "kjyo_ym" "tksNbk_kbn" "fcl_exec_kbn" "rec_sts_kbn" "ins_dt" "ins_usr"
|
||||||
|
"D4420202011611A4 0183733 23030133625911102303 4963500230000020003110000000622000000000000000000000000 ア-ビタツクスチユウシヤエキ100MG 100MG 20MLX1Vハコダテチユウオウビヨウイン 00000408585ハコダテシホンチヨウ33バン2ゴウ " "202" "02" "011611A4 " "0183733 " "496350023" "110" "230301" "20230301" "3362591" "000002" "00031100" "0000062200" "ア-ビタツクスチユウシヤエキ100MG 100MG 20MLX1V" "ハコダテチユウオウビヨウイン " "0408585ハコダテシホンチヨウ33バン2ゴウ " "ハコダテシホンチヨウ33バン2ゴウ " "0408585" "" "000000" " " "20230222" "J" "VJSK_J_MERCK_2023022" "J2023022200000022" "29" "20230301" "202303142041" "110" "売上" "01161" "300000383" "函館支店" "" "200000016" "株式会社スズケン" "0183733 " "670234934576694289" "シャカイフクシホウジンハコダテコウセイイン ハコダテチュウオウビョウイン" "社会福祉法人函館厚生院 函館中央病院" "040-0011 北海道函館市本町33−2" "496350023" "アービタックス 注射剤 100mg 1VIAL" "2" "31100" "62200" "31438" "62876" "35309" "70618" "" "" "1" "" "" "" "J" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "202303" "" "" "0" "23-03-14 20:41:26" "SYSTEM"
|
||||||
|
"D4420202011611A4 0183733 23030133625921102303 4963500230000080003110000002488000000000000000000000000 ア-ビタツクスチユウシヤエキ100MG 100MG 20MLX1Vハコダテチユウオウビヨウイン 00000408585ハコダテシホンチヨウ33バン2ゴウ " "202" "02" "011611A4 " "0183733 " "496350023" "110" "230301" "20230301" "3362592" "000008" "00031100" "0000248800" "ア-ビタツクスチユウシヤエキ100MG 100MG 20MLX1V" "ハコダテチユウオウビヨウイン " "0408585ハコダテシホンチヨウ33バン2ゴウ " "ハコダテシホンチヨウ33バン2ゴウ " "0408585" "" "000000" " " "20230222" "J" "VJSK_J_MERCK_2023022" "J2023022200000023" "30" "20230301" "202303142041" "110" "売上" "01161" "300000383" "函館支店" "" "200000016" "株式会社スズケン" "0183733 " "670234934576694289" "シャカイフクシホウジンハコダテコウセイイン ハコダテチュウオウビョウイン" "社会福祉法人函館厚生院 函館中央病院" "040-0011 北海道函館市本町33−2" "496350023" "アービタックス 注射剤 100mg 1VIAL" "8" "31100" "248800" "31438" "251504" "35309" "282472" "" "" "1" "" "" "" "J" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "202303" "" "" "0" "23-03-14 20:41:26" "SYSTEM"
|
||||||
|
"D4416101311101A8 5140013 23030173719811122303 4963500230000120002738100003285720000000000000000000000 ア-ビタツクスチユウシヤエキ100MG 100MG 20MLX1Vトツトリニツセキビヨウイン 00006808517トツトリケントツトリシシヨウトクチヨウ117 " "161" "01" "311101A8 " "5140013 " "496350023" "112" "230301" "20230301" "7371981" "000012" "00027381" "0000328572" "ア-ビタツクスチユウシヤエキ100MG 100MG 20MLX1V" "トツトリニツセキビヨウイン " "6808517トツトリケントツトリシシヨウトクチヨウ117 " "トツトリケントツトリシシヨウトクチヨウ117 " "6808517" "" "000000" " " "20230224" "J" "VJSK_J_MERCK_2023022" "J2023022400000011" "16" "20230301" "202303142041" "110" "売上" "31110" "300000391" "鳥取支店" "" "200000015" "株式会社サンキ" "5140013 " "670237031040828444" "ニホンセキジュウジシャ トットリセキジュウジビョウイン" "日本赤十字社 鳥取赤十字病院" "680-0017 鳥取県鳥取市尚徳町117" "496350023" "アービタックス 注射剤 100mg 1VIAL" "12" "27381" "328572" "31438" "377256" "35309" "423708" "" "" "1" "" "" "" "J" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "202303" "" "" "0" "23-03-14 20:41:26" "SYSTEM"
|
||||||
|
"D4416101311101A8 5140013 23030173720211122303 4963500230000080002738100002190480000000000000000000000 ア-ビタツクスチユウシヤエキ100MG 100MG 20MLX1Vトツトリニツセキビヨウイン 00006808517トツトリケントツトリシシヨウトクチヨウ117 " "161" "01" "311101A8 " "5140013 " "496350023" "112" "230301" "20230301" "7372021" "000008" "00027381" "0000219048" "ア-ビタツクスチユウシヤエキ100MG 100MG 20MLX1V" "トツトリニツセキビヨウイン " "6808517トツトリケントツトリシシヨウトクチヨウ117 " "トツトリケントツトリシシヨウトクチヨウ117 " "6808517" "" "000000" " " "20230224" "J" "VJSK_J_MERCK_2023022" "J2023022400000012" "17" "20230301" "202303142041" "110" "売上" "31110" "300000391" "鳥取支店" "" "200000015" "株式会社サンキ" "5140013 " "670237031040828444" "ニホンセキジュウジシャ トットリセキジュウジビョウイン" "日本赤十字社 鳥取赤十字病院" "680-0017 鳥取県鳥取市尚徳町117" "496350023" "アービタックス 注射剤 100mg 1VIAL" "8" "27381" "219048" "31438" "251504" "35309" "282472" "" "" "1" "" "" "" "J" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "202303" "" "" "0" "23-03-14 20:41:26" "SYSTEM"
|
||||||
|
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/slip_data_202304290000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/slip_data_202304290000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"recvdata" "rec_whs_cd" "rec_whs_sub_cd" "rec_whs_org_cd" "rec_cust_cd" "rec_comm_cd" "rec_tran_kbn" "rev_hsdnYmd_wrk" "rev_hsdnYmd_srk" "rec_urag_no" "rec_amt" "rec_unit_price" "rec_price" "rec_comm_nm" "rec_nnskFcl_nm" "free_item" "rec_nnsk_fcl_addr" "rec_nnsk_fcl_post" "rec_nnsk_fcl_tel" "rec_bef_hsdn_ymd" "rec_bef_slip_no" "rec_ymd" "sale_data_cat" "slip_file_nm" "slip_mgt_no" "row_num" "hsdn_ymd" "exec_dt" "v_tran_cd" "tran_kbn_nm" "whs_org_cd" "v_whsOrg_cd" "whs_org_nm" "whs_org_kn" "v_whs_cd" "whs_nm" "nnsk_cd" "fcl_cd" "fcl_kn" "fcl_nm" "fcl_addr_v" "comm_cd" "comm_nm" "nn_amt" "nn_unitPrice" "nn_price" "unit_price" "unit_amt" "drag_price" "drag_amt" "whsPos_err_kbn" "htdnYmd_err_kbn" "prd_exis_kbn" "fcl_exis_kbn" "bef_hsdn_ymd" "bef_slip_no" "slip_org_kbn" "err_flg1" "err_flg2" "err_flg3" "err_flg4" "err_flg5" "err_flg6" "err_flg7" "err_flg8" "err_flg9" "err_flg10" "err_flg11" "err_flg12" "err_flg13" "err_flg14" "err_flg15" "err_flg16" "err_flg17" "err_flg18" "err_flg19" "err_flg20" "kjyo_ym" "tksNbk_kbn" "fcl_exec_kbn" "rec_sts_kbn" "ins_dt" "ins_usr"
|
||||||
|
"DAY2-101311101A8 5140013 23030173719811122303 4963500230000120002738100003285720000000000000000000000 ア-ビタツクスチユウシヤエキ100MG 100MG 20MLX1Vトツトリニツセキビヨウイン 00006808517トツトリケントツトリシシヨウトクチヨウ117 " "161" "01" "311101A8 " "5140013 " "496350023" "112" "230301" "20230301" "7371981" "000012" "00027381" "0000328572" "ア-ビタツクスチユウシヤエキ100MG 100MG 20MLX1V" "トツトリニツセキビヨウイン " "6808517トツトリケントツトリシシヨウトクチヨウ117 " "トツトリケントツトリシシヨウトクチヨウ117 " "6808517" "" "000000" " " "20230224" "J" "VJSK_J_MERCK_2023022" "J2023022400000011" "16" "20230301" "202303142041" "110" "売上" "31110" "300000391" "鳥取支店" "" "200000015" "株式会社サンキ" "5140013 " "670237031040828444" "ニホンセキジュウジシャ トットリセキジュウジビョウイン" "日本赤十字社 鳥取赤十字病院" "680-0017 鳥取県鳥取市尚徳町117" "496350023" "アービタックス 注射剤 100mg 1VIAL" "12" "27381" "328572" "31438" "377256" "35309" "423708" "" "" "1" "" "" "" "J" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "202303" "" "" "0" "23-03-14 20:41:26" "SYSTEM"
|
||||||
|
"DAY2-101311101A8 5140013 23030173720211122303 4963500230000080002738100002190480000000000000000000000 ア-ビタツクスチユウシヤエキ100MG 100MG 20MLX1Vトツトリニツセキビヨウイン 00006808517トツトリケントツトリシシヨウトクチヨウ117 " "161" "01" "311101A8 " "5140013 " "496350023" "112" "230301" "20230301" "7372021" "000008" "00027381" "0000219048" "ア-ビタツクスチユウシヤエキ100MG 100MG 20MLX1V" "トツトリニツセキビヨウイン " "6808517トツトリケントツトリシシヨウトクチヨウ117 " "トツトリケントツトリシシヨウトクチヨウ117 " "6808517" "" "000000" " " "20230224" "J" "VJSK_J_MERCK_2023022" "J2023022400000012" "17" "20230301" "202303142041" "110" "売上" "31110" "300000391" "鳥取支店" "" "200000015" "株式会社サンキ" "5140013 " "670237031040828444" "ニホンセキジュウジシャ トットリセキジュウジビョウイン" "日本赤十字社 鳥取赤十字病院" "680-0017 鳥取県鳥取市尚徳町117" "496350023" "アービタックス 注射剤 100mg 1VIAL" "8" "27381" "219048" "31438" "251504" "35309" "282472" "" "" "1" "" "" "" "J" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "202303" "" "" "0" "23-03-14 20:41:26" "SYSTEM"
|
||||||
|
"DAY2-202041131A1 1409581 23030106357711102303 4963500230000070002966000002076200000000000000000000000 ア-ビタツクスチユウシヤエキ100MG 100MG 20MLX1Vトウホクロウサイビヨウイン 00009818563センダイシアオバクダイノハラ " "202" "02" "041131A1 " "1409581 " "496350023" "110" "230301" "20230301" "0635771" "000007" "00029660" "0000207620" "ア-ビタツクスチユウシヤエキ100MG 100MG 20MLX1V" "トウホクロウサイビヨウイン " "9818563センダイシアオバクダイノハラ " "センダイシアオバクダイノハラ " "9818563" "" "000000" " " "20230227" "J" "VJSK_J_MERCK_2023022" "J2023022700000128" "135" "20230301" "202303142041" "110" "売上" "04113" "300000354" "北仙台支店" "" "200000016" "株式会社スズケン" "1409581 " "670232828063007745" "ドクリツギョウセイホウジンロウドウシャケンコウアンゼンキコウ トウホクロウサイビョウイン" "独立行政法人労働者健康安全機構 東北労災病院" "981-0911 宮城県仙台市青葉区台原4−3−21" "496350023" "アービタックス 注射剤 100mg 1VIAL" "7" "29660" "207620" "31438" "220066" "35309" "247163" "" "" "1" "" "" "" "J" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "202303" "" "" "0" "23-03-14 20:41:26" "SYSTEM"
|
||||||
|
"DAY2-202141234B1 2607506 23030109289511102303 4963500230000100003036600003036600000000000000000000000 ア-ビタツクスチユウシヤエキ100MG 100MG 20MLX1Vヨコスカキヨウサイビヨウイン 00002380011カナガワケンヨコスカシヨネガハマドオリ1-16 " "202" "02" "141234B1 " "2607506 " "496350023" "110" "230301" "20230301" "0928951" "000010" "00030366" "0000303660" "ア-ビタツクスチユウシヤエキ100MG 100MG 20MLX1V" "ヨコスカキヨウサイビヨウイン " "2380011カナガワケンヨコスカシヨネガハマドオリ1-16 " "カナガワケンヨコスカシヨネガハマドオリ1-16 " "2380011" "" "000000" " " "20230228" "J" "VJSK_J_MERCK_2023022" "J2023022800000094" "101" "20230301" "202303142041" "110" "売上" "14123" "300000274" "磯子支店" "" "200000016" "株式会社スズケン" "2607506 " "670236609488110605" "コッカコウムインキョウサイクミアイレンゴウカイ ヨコスカキョウサイビョウイン" "国家公務員共済組合連合会 横須賀共済病院" "238-0011 神奈川県横須賀市米が浜通1−16" "496350023" "アービタックス 注射剤 100mg 1VIAL" "10" "30366" "303660" "31438" "314380" "35309" "353090" "" "" "1" "" "" "" "J" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "202303" "" "" "0" "23-03-14 20:41:26" "SYSTEM"
|
||||||
|
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/stock_slip_data_202304280000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/stock_slip_data_202304280000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"rec_data" "rec_whs_cd" "rec_whs_sub_cd" "rec_sto_place" "rec_stock_ymd" "rec_comm_cd" "rec_amt" "rev_stok_no_sign" "rev_jan_cd" "rec_free_item" "rec_ymd" "sale_data_cat" "slip_file_nm" "slip_mgt_no" "row_num" "exec_dt" "err_flg1" "err_flg2" "err_flg3" "err_flg4" "err_flg5" "err_flg6" "err_flg7" "err_flg8" "err_flg9" "err_flg10" "rec_sts_kbn" "ins_dt" "ins_usr"
|
||||||
|
"D463630101 23022849630021900003500000 セトロタイドチユウシヤヨウ0.25MG 1V" "363" "01" "01 " "230228" "496300219" "000035" "0" "0000" " セトロタイドチユウシヤヨウ0.25MG 1V" "20230314" "J" "VJSK-STOCK_J_MERCK_2023031400.txt" "J2023031400000059" "59" "202303142041" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "23-03-14 20:41:57" "SYSTEM"
|
||||||
|
"D4625301026 2302284963001270000040000001ゴナールエフヒカチユウペン450 1トウ40 " "253" "01" "026 " "230228" "496300127" "000004" "0" "0000" "01ゴナールエフヒカチユウペン450 1トウ40 " "20230314" "J" "VJSK-STOCK_J_MERCK_2023031400.txt" "J2023031400000060" "60" "202303142041" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "23-03-14 20:41:57" "SYSTEM"
|
||||||
|
"D4625301026 2302284963001340000220000001ゴナールエフヒカチユウペン900 1トウ40 " "253" "01" "026 " "230228" "496300134" "000022" "0" "0000" "01ゴナールエフヒカチユウペン900 1トウ40 " "20230314" "J" "VJSK-STOCK_J_MERCK_2023031400.txt" "J2023031400000061" "61" "202303142041" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "23-03-14 20:41:57" "SYSTEM"
|
||||||
|
"D4625301026 2302284963004170000500000001オビドレルヒカチユウシリンジ250MCG 140 " "253" "01" "026 " "230228" "496300417" "000050" "0" "0000" "01オビドレルヒカチユウシリンジ250MCG 140 " "20230314" "J" "VJSK-STOCK_J_MERCK_2023031400.txt" "J2023031400000062" "62" "202303142041" "a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "23-03-14 20:41:57" "SYSTEM"
|
||||||
|
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/stock_slip_data_202304290000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/stock_slip_data_202304290000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"rec_data" "rec_whs_cd" "rec_whs_sub_cd" "rec_sto_place" "rec_stock_ymd" "rec_comm_cd" "rec_amt" "rev_stok_no_sign" "rev_jan_cd" "rec_free_item" "rec_ymd" "sale_data_cat" "slip_file_nm" "slip_mgt_no" "row_num" "exec_dt" "err_flg1" "err_flg2" "err_flg3" "err_flg4" "err_flg5" "err_flg6" "err_flg7" "err_flg8" "err_flg9" "err_flg10" "rec_sts_kbn" "ins_dt" "ins_usr"
|
||||||
|
"DAY2-301026 2302284963001340000220000001ゴナールエフヒカチユウペン900 1トウ40 " "253" "01" "026 " "230228" "496300134" "000022" "0" "0000" "01ゴナールエフヒカチユウペン900 1トウ40 " "20230314" "J" "VJSK-STOCK_J_MERCK_2023031400.txt" "J2023031400000061" "61" "202303142041" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "23-03-14 20:41:57" "SYSTEM"
|
||||||
|
"DAY2-301026 2302284963004170000500000001オビドレルヒカチユウシリンジ250MCG 140 " "253" "01" "026 " "230228" "496300417" "000050" "0" "0000" "01オビドレルヒカチユウシリンジ250MCG 140 " "20230314" "J" "VJSK-STOCK_J_MERCK_2023031400.txt" "J2023031400000062" "62" "202303142041" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "23-03-14 20:41:57" "SYSTEM"
|
||||||
|
"DAY2-301027 2302284963001100000020000001ゴナールエフヒカチユウペン300 1トウ40 " "253" "01" "027 " "230228" "496300110" "000002" "0" "0000" "01ゴナールエフヒカチユウペン300 1トウ40 " "20230314" "J" "VJSK-STOCK_J_MERCK_2023031400.txt" "J2023031400000063" "63" "202303142041" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "23-03-14 20:41:57" "SYSTEM"
|
||||||
|
"DAY2-301027 2302284963001270000110000001ゴナールエフヒカチユウペン450 1トウ40 " "253" "01" "027 " "230228" "496300127" "000011" "0" "0000" "01ゴナールエフヒカチユウペン450 1トウ40 " "20230314" "J" "VJSK-STOCK_J_MERCK_2023031400.txt" "J2023031400000064" "64" "202303142041" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "23-03-14 20:41:57" "SYSTEM"
|
||||||
|
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/tran_kbn_mst_202304280000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/tran_kbn_mst_202304280000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"v_tran_cd" "sub_no" "nm" "start_dt" "end_dt" "dsp_odr" "rec_sts_kbn" "ins_dt" "upd_dt"
|
||||||
|
"10001" "1" "Veeva取引区分名01-1" "20230101" "99991231" "1" "0" "2023-05-09 12:00:01" "2023-05-09 13:00:01"
|
||||||
|
"10001" "2" "Veeva取引区分名01-2" "20230102" "99991231" "1" "0" "2023-05-09 12:00:02" "2023-05-09 13:00:02"
|
||||||
|
"10001" "3" "Veeva取引区分名01-3" "20230103" "99991231" "1" "0" "2023-05-09 12:00:03" "2023-05-09 13:00:03"
|
||||||
|
"10001" "4" "Veeva取引区分名01-4" "20230104" "99991231" "1" "0" "2023-05-09 12:00:04" "2023-05-09 13:00:04"
|
||||||
|
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/tran_kbn_mst_202304290000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/tran_kbn_mst_202304290000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"v_tran_cd" "sub_no" "nm" "start_dt" "end_dt" "dsp_odr" "rec_sts_kbn" "ins_dt" "upd_dt"
|
||||||
|
"10001" "3" "Veeva取引区分名01-3" "20230201" "20301231" "1" "0" "2023-05-09 12:00:03" "2023-05-09 13:00:03"
|
||||||
|
"10001" "4" "Veeva取引区分名01-4" "20230202" "20301231" "1" "0" "2023-05-09 12:00:04" "2023-05-09 13:00:04"
|
||||||
|
"10001" "5" "Veeva取引区分名01-5" "20230203" "20301231" "1" "0" "2023-05-09 12:00:05" "2023-05-09 13:00:05"
|
||||||
|
"10002" "1" "Veeva取引区分名02-1" "20230204" "20301231" "1" "0" "2023-05-09 12:00:06" "2023-05-09 13:00:06"
|
||||||
|
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/vop_hco_merge_202304280000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/vop_hco_merge_202304280000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"hco_vid__v" "hco_vid__v_merge" "apply_dt" "merge_reason"
|
||||||
|
"100000001" "900000001" "20230509" "事由01"
|
||||||
|
"100000002" "900000002" "20230509" "事由02"
|
||||||
|
"100000003" "900000003" "20230509" "事由03"
|
||||||
|
"100000004" "900000004" "20230509" "事由04"
|
||||||
|
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/vop_hco_merge_202304290000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/vop_hco_merge_202304290000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"hco_vid__v" "hco_vid__v_merge" "apply_dt" "merge_reason"
|
||||||
|
"100000003" "900000003" "20230509" "DAY-2事由03"
|
||||||
|
"100000004" "900000004" "20230509" "DAY-2事由04"
|
||||||
|
"100000005" "900000005" "20230509" "DAY-2事由05"
|
||||||
|
"100000006" "900000006" "20230509" "DAY-2事由06"
|
||||||
|
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/whs_customer_mst_202304280000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/whs_customer_mst_202304280000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"whs_cd" "whs_sub_cd" "customer_cd" "sub_no" "start_dt" "end_dt" "org_cd" "src_org_cd" "nm" "kn_nm" "addr" "kn_addr" "zip_cd" "tel_no" "rec_sts_kbn" "ins_dt" "upd_dt"
|
||||||
|
"006" "01" "1002900000" "0" "20000101" "99991231" "11" "1131A2283316" "辻内科小児科医院 " "ツジナイカシヨウニカ イイン" "長崎県 佐世保市皆瀬町29 " "ナガサキケン サセボシカイゼチヨウ 29" "8570144" "0956492319" "0" "23-04-14 11:53:14" "23-04-14 11:53:14"
|
||||||
|
"006" "01" "1005400000" "0" "20000101" "99991231" "12" "1211C3415515" "医療法人 愛恵会 佐世保愛恵病院 " "イリヨウホウジンアイケイカイサセボアイケイビ" "長崎県 佐世保市瀬戸越4丁目 2−15 " "ナガサキケン サセボシセトゴシ 4チヨウメ 2-15" "8570134" "0956493335" "0" "23-04-14 11:53:14" "23-04-14 11:53:14"
|
||||||
|
"006" "01" "1007200000" "0" "20000101" "99991231" "11" "1131A2407312" "医療法人 山祇診療所 " "イリヨウホウジンヤマズミシンリヨウジヨ" "長崎県 佐世保市山祇町 19−36 " "ナガサキケン サセボシヤマズミチョウ" "8570822" "0956313633" "0" "23-04-14 11:53:14" "23-04-14 11:53:14"
|
||||||
|
"006" "01" "1007800000" "0" "20000101" "99991231" "11" "1121A2402213" "医療法人道仁会 品川医院 " "イリヨウホウジンドウジンカイ シナガワイイン" "長崎県 佐世保市柚木町2188 " "ナガサキケン サセボシユノキチヨウ 2188" "8570112" "0956460005" "0" "23-04-14 11:53:14" "23-04-14 11:53:14"
|
||||||
|
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/whs_customer_mst_202304290000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/whs_customer_mst_202304290000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"whs_cd" "whs_sub_cd" "customer_cd" "sub_no" "start_dt" "end_dt" "org_cd" "src_org_cd" "nm" "kn_nm" "addr" "kn_addr" "zip_cd" "tel_no" "rec_sts_kbn" "ins_dt" "upd_dt"
|
||||||
|
"006" "01" "1007200000" "0" "20000101" "99991231" "11" "1131A2407312" "医療法人 山祇診療所2 " "イリヨウホウジンヤマズミシンリヨウジヨ" "長崎県 佐世保市山祇町 19−36 " "ナガサキケン サセボシヤマズミチョウ" "8570822" "0956313633" "0" "23-04-14 11:53:14" "23-04-14 11:53:14"
|
||||||
|
"006" "01" "1007800000" "0" "20000101" "99991231" "11" "1121A2402213" "医療法人道仁会 品川医院2 " "イリヨウホウジンドウジンカイ シナガワイイン" "長崎県 佐世保市柚木町2188 " "ナガサキケン サセボシユノキチヨウ 2188" "8570112" "0956460005" "0" "23-04-14 11:53:14" "23-04-14 11:53:14"
|
||||||
|
"006" "01" "1008000000" "0" "20000101" "99991231" "11" "1131A2283316" "北原整形外科医院2 " "キタハラセイケイゲカ イイン" "長崎県 佐世保市瀬戸越町4丁目1298−1 " "ナガサキケン サセボシセトゴシチヨウ 1298-1" "8570135" "0956497773" "0" "23-04-14 11:53:14" "23-04-14 11:53:14"
|
||||||
|
"006" "01" "1009100000" "0" "20000101" "99991231" "11" "1121A2224212" "山口医院2 " "ヤマグチイイン" "長崎県 佐世保市春日町29−14 " "ナガサキケン サセボシカスガチヨウ29-14" "8570011" "0956228610" "0" "23-04-14 11:53:14" "23-04-14 11:53:14"
|
||||||
|
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/whs_mst_202304280000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/whs_mst_202304280000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"v_whs_cd" "sub_no" "nm" "kn_nm" "sht_nm" "zip_cd" "addr" "kn_addr" "tel_no" "v_hld_cd" "start_dt" "end_dt" "dsp_odr" "rec_sts_kbn" "ins_dt" "upd_dt"
|
||||||
|
"200000002" "0" "株式会社モロオ" "カナ01" "モロオ" "1110001" "住所01" "ジュウショ01" "00-0000-0001" "0" "20000101" "99991231" "20" "0" "16-04-15 16:25:33" "16-04-15 16:25:33"
|
||||||
|
"200000005" "0" "岩渕薬品株式会社" "カナ02" "岩渕薬品" "1110002" "住所02" "ジュウショ02" "00-0000-0002" "0" "20000101" "99991231" "50" "0" "16-04-15 16:25:33" "16-04-15 16:25:33"
|
||||||
|
"200000009" "0" "株式会社マルタケ" "カナ03" "マルタケ" "1110003" "住所03" "ジュウショ03" "00-0000-0003" "0" "20000101" "99991231" "90" "0" "16-04-15 16:25:33" "16-04-15 16:25:33"
|
||||||
|
"200000010" "0" "株式会社ファイネス" "カナ04" "ファイネス" "1110004" "住所04" "ジュウショ04" "00-0000-0004" "0" "20000101" "99991231" "100" "0" "16-04-15 16:25:33" "16-04-15 16:25:33"
|
||||||
|
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/whs_mst_202304290000.tsv
vendored
Normal file
5
ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/whs_mst_202304290000.tsv
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
"v_whs_cd" "sub_no" "nm" "kn_nm" "sht_nm" "zip_cd" "addr" "kn_addr" "tel_no" "v_hld_cd" "start_dt" "end_dt" "dsp_odr" "rec_sts_kbn" "ins_dt" "upd_dt"
|
||||||
|
"200000009" "0" "株式会社マルタケ" "" "マルタケ" "" "" "" "" "0" "20000101" "99991231" "90" "0" "16-04-15 16:25:33" "16-04-15 16:25:33"
|
||||||
|
"200000010" "0" "株式会社ファイネス" "" "ファイネス" "" "" "" "" "0" "20000101" "99991231" "100" "0" "16-04-15 16:25:33" "16-04-15 16:25:33"
|
||||||
|
"200000011" "0" "鍋林株式会社" "" "鍋林" "" "" "" "" "0" "20000101" "99991231" "110" "0" "16-04-15 16:25:33" "16-04-15 16:25:33"
|
||||||
|
"200000012" "0" "岡野薬品株式会社" "" "岡野薬品" "" "" "" "" "0" "20000101" "99991231" "120" "0" "16-04-15 16:25:33" "16-04-15 16:25:33"
|
||||||
|
118
ecs/jskult-batch-daily/tests/testing_vjsk_utility.py
Normal file
118
ecs/jskult-batch-daily/tests/testing_vjsk_utility.py
Normal file
@ -0,0 +1,118 @@
|
|||||||
|
|
||||||
|
|
||||||
|
import csv
|
||||||
|
import decimal
|
||||||
|
from datetime import datetime
|
||||||
|
|
||||||
|
|
||||||
|
def create_vjsk_assertion_list(file_path: str) -> list:
|
||||||
|
"""DB登録期待値リストを作成する
|
||||||
|
|
||||||
|
Args:
|
||||||
|
file_path (str): DB登録期待値ファイル(tsvファイル)のパス
|
||||||
|
※DB登録期待値ファイルの前提
|
||||||
|
受領データファイルと同じ
|
||||||
|
BOM付きtsv形式
|
||||||
|
一行目はカラム名になっているヘッダ行
|
||||||
|
|
||||||
|
Returns:
|
||||||
|
List(dict) DB登録期待値辞書リスト
|
||||||
|
"""
|
||||||
|
with open(file_path, encoding='utf_8_sig', newline='') as tsv_file:
|
||||||
|
header = tsv_file.readline().strip('\n').replace('"', '').split('\t')
|
||||||
|
reader = csv.DictReader(tsv_file, fieldnames=header, delimiter='\t')
|
||||||
|
rows = [r for r in reader]
|
||||||
|
|
||||||
|
# DB抽出値と比較できるように、リテラル値をDB抽出値と同じデータフォーマットに変換
|
||||||
|
for row in rows:
|
||||||
|
for k, v in row.items():
|
||||||
|
converted_value = v
|
||||||
|
if v == 'NULL':
|
||||||
|
converted_value = None
|
||||||
|
if is_valid_date_format(v, '%Y/%m/%d') is True: # YYYY/MM/DD
|
||||||
|
converted_value = datetime.strptime(v, '%Y/%m/%d').date()
|
||||||
|
if is_valid_date_format(v, '%Y-%m-%d') is True: # YYYY-MM-DD
|
||||||
|
converted_value = datetime.strptime(v, '%Y-%m-%d').date()
|
||||||
|
if is_valid_date_format(v, '%Y/%m/%d %H:%M:%S') is True: # YYYY/MM/DD HH:MM:SS
|
||||||
|
converted_value = datetime.strptime(v, '%Y/%m/%d %H:%M:%S')
|
||||||
|
if is_valid_date_format(v, '%Y-%m-%d %H:%M:%S') is True: # YYYY-MM-DD HH:MM:SS
|
||||||
|
converted_value = datetime.strptime(v, '%Y-%m-%d %H:%M:%S')
|
||||||
|
if is_valid_date_format(v, '%y-%m-%d %H:%M:%S') is True: # YY-MM-DD HH:MM:SS
|
||||||
|
converted_value = datetime.strptime(v, '%y-%m-%d %H:%M:%S')
|
||||||
|
|
||||||
|
row[k] = converted_value
|
||||||
|
|
||||||
|
return rows
|
||||||
|
|
||||||
|
|
||||||
|
def is_valid_date_format(date_str: str, date_format):
|
||||||
|
"""日付文字列が、与えられたフォーマットにマッチするかを検査する
|
||||||
|
|
||||||
|
Args:
|
||||||
|
date_str (str): 日付文字列
|
||||||
|
date_format (str, optional): 日付のフォーマット
|
||||||
|
|
||||||
|
Returns:
|
||||||
|
_type_: 正しい日付文字列の場合、True、それ以外はFalse
|
||||||
|
"""
|
||||||
|
try:
|
||||||
|
datetime.strptime(date_str, date_format)
|
||||||
|
return True
|
||||||
|
except ValueError:
|
||||||
|
return False
|
||||||
|
|
||||||
|
|
||||||
|
def assert_table_results(actual_rows: list[dict], expect_rows: list[dict], ignore_col_names: list = None, force_cast_to_str_columns: list = []) -> None:
|
||||||
|
"""テーブル同士の取得結果突き合わせ
|
||||||
|
|
||||||
|
Args:
|
||||||
|
actual_rows (list[dict]): テスト結果の辞書リスト
|
||||||
|
expect_rows (list[dict]): 期待値の辞書リスト
|
||||||
|
ignore_col_name (list): 比較を無視するDBのカラム名. Default None.
|
||||||
|
"""
|
||||||
|
# 取得件数が一致すること
|
||||||
|
assert len(actual_rows) == len(expect_rows), f'レコード件数が一致しません。DBレコード数 : {len(actual_rows)} 期待値 : {len(expect_rows)}'
|
||||||
|
|
||||||
|
line_number = 0
|
||||||
|
# 1行ずつ調査
|
||||||
|
for actual_row, expect_row in zip(actual_rows, expect_rows):
|
||||||
|
line_number += 1
|
||||||
|
# 1カラムずつ調査
|
||||||
|
for actual_col_name, expect_col_name in zip(actual_row, expect_row):
|
||||||
|
# テストメソッド側で個別に確認するものはスキップさせる
|
||||||
|
if ignore_col_names is not None and actual_col_name in ignore_col_names:
|
||||||
|
continue
|
||||||
|
else:
|
||||||
|
actual_value = actual_row[actual_col_name]
|
||||||
|
expect_value = expect_row[expect_col_name]
|
||||||
|
|
||||||
|
# 期待値を、DBのデータ型(リフレクションされたpythonのデータ型)にキャストする
|
||||||
|
if actual_col_name in force_cast_to_str_columns:
|
||||||
|
# DB項目(varchar)に日付型としてキャスト可能な値が期待値である場合、force_cast_to_str_columnsに基づいて強制的に文字列キャストする
|
||||||
|
if type(expect_value).__name__ == 'date':
|
||||||
|
expect_value = expect_value.strftime('%Y-%m-%d')
|
||||||
|
elif isinstance(actual_value, (int)):
|
||||||
|
# DB項目(int)の場合、期待値もintにキャストする
|
||||||
|
expect_value = int(expect_value)
|
||||||
|
elif isinstance(actual_value, (float)):
|
||||||
|
# DB項目(float)の場合、期待値もfloatにキャストする
|
||||||
|
expect_value = float(expect_value)
|
||||||
|
elif isinstance(actual_value, (decimal.Decimal)):
|
||||||
|
# DB項目(decimal)の場合、期待値もdecimalにキャストする
|
||||||
|
expect_value = decimal.Decimal(expect_value)
|
||||||
|
elif type(actual_value).__name__ == "date":
|
||||||
|
# DB項目(date)の場合、期待値("YYYYMMDD")もdateにキャストする
|
||||||
|
if is_valid_date_format(expect_value, '%Y%m%d') is True: # YYYYMMDD
|
||||||
|
expect_value = datetime.strptime(expect_value, '%Y%m%d').date()
|
||||||
|
elif actual_value is None and expect_value == "":
|
||||||
|
# DB項目値がNULLの場合、期待値が""であればNoneに置換する
|
||||||
|
expect_value = None
|
||||||
|
elif actual_value == "0000-00-00" and expect_value == "":
|
||||||
|
# DB項目(date)がゼロ日付(NULL代替値)の場合、期待値が""であれば"0000-00-00"に置換する
|
||||||
|
expect_value = "0000-00-00"
|
||||||
|
elif actual_value == "0000-00-00 00:00:00" and expect_value == "":
|
||||||
|
# DB項目(datetime)がゼロ日付(NULL代替値)の場合、期待値が""であれば"0000-00-00 00:00:00"に置換する
|
||||||
|
expect_value = "0000-00-00 00:00:00"
|
||||||
|
|
||||||
|
# 検証
|
||||||
|
assert actual_value == expect_value, f'{line_number}行目:"{actual_col_name}" : "{actual_value}" ({type(actual_value)})が、期待値 "{expect_value}" ({type(expect_value)}) と一致しませんでした'
|
||||||
Loading…
x
Reference in New Issue
Block a user