2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

Access総合相談所 29

1 :名無しさん@そうだ選挙にいこう:2019/09/23(月) 20:02:25.84 .net
ACCESSに関する質問はこちらへ
▼━ 質問のしかた ━━━━━━━━━━━━━━━━━━━━
★ 質問内容は具体的に書いてください。
  業務上の守秘義務も大事ですが、貴方の所属組織を特定できるほど、特異な業務・システムは滅多にありません。
 作りたいものの内容を隠しすぎないようにし、列名、データ値を適当に変更して例示するなどしましょう。
★ 事前にGoogle等で調べられる範囲は調べてください。
★ 完全初心者はまず、新規作成テンプレから「NorthWind」を開いて、一通り触ってみてください。ACCESSの概念を理解する
もっとも簡単な方法です。
★ お金の管理でシステム設計ミスが会社経営に重大な支障が予見される場合は、パッケージソフトに誘導する場合があります。
格安なソフトもあるので設計に取りかかってから悩む前に、市場調査も行なってください。
★ アドバイスを貰ったら、必ず経過・結果の報告をして下さい。
  ギブアンドテイクで情報を共有しましょう。
▼━初心者用質問テンプレ ━━━━━━━━━━━━━━━━━
【Windows】 7, 8,10 【Access】 365,2013,2016,2019
【作りたいものの業務分野】
販売管理,買掛管理,営業予算管理,営業実績管理,生産管理,
財務管理,労務管理,学術研究統計,文字格納を主体としたDB,その他()
【あなたのスキル】
LV1:完全初心者,
LV2:ACCESSの基本要素(テーブルやクエリーなど)の役割を知っている
LV3:VBAが打てる
【どのオブジェクトに関する質問か】
テーブル,クエリー,フォーム,レポート,サブフォーム(サブレポート),リレーション,VBA
【やりたいこと】
(質問によっては各テーブル名と列名を例示)
(クエリーの場合は、左上の「表示」を押し”SQLビュー”に変更して表示される”SQL文”を貼り付けると回答者がわかりやすい)
(得たい出力結果や挙動)
【エラーメッセージに関する質問】
・エラーメッセージの内容 ・windowsは32bit版か64bit版か
前スレ
Access総合相談所 28
https://mevius.5ch.net/test/read.cgi/bsoft/1535638568/

45 ::2019/10/14(Mon) 21:36:08 .net
テーブル新設したりする場合はADOの場合はADO-Xまで必要じゃね?

46 ::2019/10/14(Mon) 21:41:13 .net
>>42
VBAでmdbファイルにアクセスするためのライブラリ
これがあればAccess本体がなくてもmdbファイルを触れる(はず)

47 ::2019/10/14(Mon) 22:00:19 .net
>>44
参照設定?

48 :名無しさん@そうだ選挙にいこう:2019/10/15(火) 01:40:57.56 .net
Access2007 からデフォルトの DB インターフェイスが DAO に変わったんです
だから VBA で ADO コードを書く際に参照設定が必要

49 :名無しさん@そうだ選挙にいこう:2019/10/15(火) 06:33:56.43 .net
ADOはactiveXベースというのが信用ならない
突然動かなくなりそう

50 :名無しさん@そうだ選挙にいこう:2019/10/15(火) 15:10:01.82 .net
【 システム環境  】 Windows10, Access2016
【 VBAが使えるか 】 はい
【 VBAでの回答  】 否
【 検索キーワード 】複数フィールド access 削除クエリ等

削除クエリで質問です

複数フィールドを指定するとandでフィルタされますが、
これをorでフィルタする方法はありますか?

クエリを分けるしかないでしょうか

51 :名無しさん@そうだ選挙にいこう:2019/10/15(火) 16:37:59.20 .net
ADOだと、一々、set nothing する必要がメンドイ

52 :名無しさん@そうだ選挙にいこう:2019/10/15(火) 18:38:00.51 .net
【 システム環境  】 Windows10, Access2016
【 VBAが使えるか 】 はい
【 VBAでの回答  】 否
【 検索キーワード 】複数テーブル like delete、指定されたテーブルから削除できませんでした

NGワードを設定し、テーブルからdeleteしたいのですが、
うまくいきません

メインテーブル
https://i.imgur.com/t8YbdY6.png

Ngワードのリスト
https://i.imgur.com/1cWBo8x.png

削除クエリ(うまく動きません)
https://i.imgur.com/1cWBo8x.png

表示すると消したいデータは一覧で表示されますが、
実行すると「指定されたテーブルから削除できませんでした」と出ます
お助け下さい

53 :名無しさん@そうだ選挙にいこう:2019/10/15(火) 19:39:46.16 .net
>>52
主キーの設定もれ

54 ::2019/10/15(Tue) 19:51:56 .net
>>52です、3枚目の画像間違えてました

こちらになります
https://i.imgur.com/Ak3gn3F.png

クエリはこう設定しました
Like "*" & [ng_word]![word] & "*"

>>52
主キーは自動で設定されるものを残しています
テスト用で色々とデフォルトの状態です
https://i.imgur.com/bR5qmxR.png
https://i.imgur.com/i9STDtC.png

55 ::2019/10/15(Tue) 20:00:34 .net
In (Like "*" & [ng_word]![word] &"*")
じゃねーの

56 ::2019/10/15(Tue) 20:05:43 .net
>>55
だめでした・・・

57 ::2019/10/15(Tue) 20:14:57 .net
主キーがあるとdelete出来ないのですね、すいません
ですが外してもdelete出来ませんでした。何が原因でしょうか

58 ::2019/10/15(Tue) 20:42:41 .net
主キーが無いとdelete出来ないんだよ
クロス結合でdeleteしようとしてるみたいだけど、なんとなく無理な気がする

59 ::2019/10/15(Tue) 21:00:33 .net
>>58
ありがとうございます
これ難しいんでしょうか

もう抽出条件に
Like "*あ*" or Like "*い*" or Like "*う*" or・・・
と書くしか無いでしょうか

60 :名無しさん@そうだ選挙にいこう:2019/10/15(火) 21:39:31.17 .net
>>59
SQLビューにして
DELETE FROM main
WHERE EXISTS (SELECT NULL FROM ng_word WHERE main.namae LIKE "*" & ng_word.word &"*")
を上書き貼り付けして実行

初心者向けのSQLだとは思わないので、VBA使えるなら一文字ずつng_wordテーブルから持ってきて
ループさせて変数に保持して、ループ内で簡単なDELTE文使えばいいと思う
SQLは沼

61 ::2019/10/15(Tue) 22:07:25 .net
>>60
す、凄い・・・うまくいきました
少し教えて頂きたいのですが

・SELECT NULL
これは少しでも軽くするためにNULLにしているということでしょうか

・FROM ng_word
これはFROM ng_word,main とは書かなくても良いのでしょうか

サブクエリこわいので、しばらくはvba覚えようと思います・・・

62 ::2019/10/15(Tue) 23:02:42 .net
>>61
NULLについては、値を使わないのでそう書いただけで、*でも1でもなんでもいいです。
SQL engineの実装の中身をみたことありませんけど、exists使ってる時点で、何をselect
してるかは無視していると思います。なので、パフォーマンスにも差はないと思います。

DELETE from main
WHERE EXISTS (SELECT ...)
は、
mainテーブルのデータうち、()内の条件を満たすものを削除しろということなので、
()内ではmainの項目(main.namae)は使用可能です。
()の外側で与えられたmain.namaeに対して、()内でng_wordテーブルのデータで
条件チェックする、と考えるのが簡単ですかね

ここで、FROM ng_word,mainと書いてはいけない理由は、
SQLビューで、SELECT * FROM ng_word,mainと書いてもらえれば解ると思います。

63 ::2019/10/16(Wed) 06:29:51 .net
>>62
何回も読んでようやく理解できました
これは当分書けそうにないレベルとわかりました
ありがとうございました!

64 :名無しさん@そうだ選挙にいこう:2019/10/17(木) 22:43:55.69 ID:QDq0tRdqy
>>50
デザインビューで
抽出条件が横並びならAND
上下にずらすとOR

65 :名無しさん@そうだ選挙にいこう:2019/10/17(木) 22:48:33.09 ID:QDq0tRdqy
>>50
ちな、同じフィールドに複数の抽出条件を入れる場合
ORなら上下に条件を並べるかOR演算子で繋ぐ
ANDなら条件をAND演算子で繋ぐか、
同じフィールドを横に並べてそれぞれに条件を入れる

66 :名無しさん@そうだ選挙にいこう:2019/10/19(土) 17:30:19.41 .net
C言語みたいにライブラリはヘッダにimport某とか書けないのかよVBAって

67 :名無しさん@そうだ選挙にいこう:2019/10/19(土) 23:26:21.21 .net
(´∀`)<いんぽ

68 :名無しさん@そうだ選挙にいこう:2019/10/19(土) 23:47:14.70 .net
https://qiita.com/AquaMeria/items/a4ffeff03b81e7d03abb

このエクセルのように

お客様コードが書かれた売り上げデータがあります
担当者名とお客様コードが書かれたマスターがあります。
同じお客様でも担当が2人いたりします

お客様コードから
担当1〇〇
担当2■■と
別カラムに表示する方法はありませんか

リレーションとクエリでやると1万データが9000になったり
11000になったりします
ジャスト1万データのまま担当を追加する方法はありませんか

69 ::2019/10/20(Sun) 03:27:51 .net
>>68 それは何用でしょうか。
担当者の成績管理ですか。
顧客コード|担当
1|A
1|B
というマスターがあり、
実績テーブルに
顧客コード|売上額
1|¥1000
1|¥500
といった情報しかないなら、按分ルールがない限りは無理です。
顧客コード|売上額|担当
1|¥1000|A
1|¥500|B
なら集計できます。
それとも
顧客コード|売上額|担当
1|¥1000|A、B
1|¥500|A、B
みたいな加工をしたいということでしょうか。

70 :名無しさん@そうだ選挙にいこう:2019/10/20(日) 07:57:16 .net
>>69

イメージとしては1番下です。

顧客コード|売上額|担当
1|¥1000|A、B
1|¥500|A、B
みたいな加工をしたいということでしょうか。

そのとーりです。

何用かと言えば仕事の仕入データの管理で
メーカーから仕入れてお客様まで直送したデータを
担当が2人持ってるところがあり
あとで手作業でこれはどっちが聞いて
メーカー発注したの?とアナログな事はしないといけません

その際、今はお客様コードから担当が誰と誰だったのか、から調べて、2人にこれはどっち?と聞いていますが
aかbまで絞れると楽になります

うまく伝えられなくてすいません

71 :57:2019/10/20(日) 08:00:41 .net
連投ですいません

accessのリレーションで
内部結合やら外部結合をすると

顧客コード|売上額|担当
1|¥1000|A、B
1|¥500|A、B
はならずに

レコードが増えて
顧客コード|売上額|担当
1|¥1000|A
1|¥500|A
1|¥1000|B
1|¥500|B
となってしまったりして
倍に表示されたりしてしまいます

72 ::2019/10/20(日) 08:04:13 .net
>>71
アクセスは横方向に伸ばす事に弱い
vbaが必要になる

73 :57:2019/10/20(日) 08:50:42 .net
>>72
そーなんですね
access vbaはよくわからず。

やっぱりエクセルでどーにかした方が早そうですね
1万行とかで、
エクセルが開くのが遅すぎてaccess使ってみたいと思ったのです

少し考えてみます

74 :名無しさん@そうだ選挙にいこう:2019/10/20(日) 10:28:35.47 .net
>>73
ってか、。>>11>>21にそのコードがある

75 :名無しさん@そうだ選挙にいこう:2019/10/21(月) 10:34:48.92 .net
これってそもそもの問題として1000円と500円のものをAとBが別に売ってるか一緒に売ってるかの区別ってどうやってしてるんだろう?
区別するフィールドあるんならそれで結合できるんでは
てかちゃんとあるよねえ?なかったら2重に計上してる可能性もあるから大問題だよ

76 :名無しさん@そうだ選挙にいこう:2019/10/21(月) 16:57:22.14 .net
かなり泥臭いやり方(VBAなし版 ただし、
仕入担当100人といった無限ではないものとする)
3個くらいに分けて書きますよ。
テーブル名 master
ID(auto)|仕入先ID:数値 |担当者:文字列
1 1 A
2 1 B
3 2 C
4 2 D

クエリー1段階目 同じ仕入先IDのなかでindexをつける Q_master
"セレクト" master.仕入先ID, master.担当者,
DCount("仕入先ID","master","担当者<""" & [担当者] & """ AND
仕入先ID=" & [仕入先ID] & "")+1 AS [index] FROM master;

77 :名無しさん@そうだ選挙にいこう:2019/10/21(月) 16:57:56.49 .net
クエリー2段階目 クロス集計っぽく担当1、担当2、担当3と列を振り分ける
グループ化して重複をまとめる
Q_masterCross
"セレクト" Q_master.仕入先ID,
DLookUp("担当者","Q_master","仕入先ID=" & [仕入先ID] & " AND index=1") AS 担当者1,
DLookUp("担当者","Q_master","仕入先ID=" & [仕入先ID] & " AND index=2") AS 担当者2,
DLookUp("担当者","Q_master","仕入先ID=" & [仕入先ID] & " AND index=3") AS 担当者3
FROM Q_master
GROUP BY Q_master.仕入先ID,
DLookUp("担当者","Q_master","仕入先ID=" & [仕入先ID] & " AND index=1"),
DLookUp("担当者","Q_master","仕入先ID=" & [仕入先ID] & " AND index=2"),
DLookUp("担当者","Q_master","仕入先ID=" & [仕入先ID] & " AND index=3");

78 :名無しさん@そうだ選挙にいこう:2019/10/21(月) 16:58:13.32 .net
クエリー3段階目 文字結合 Q_concat
"セレクト" Q_masterCross.仕入先ID,
[担当者1]
& IIf(IsNull([担当者2]),"","、" & [担当者2])
& IIf(IsNull([担当者3]),"","、" & [担当者3])
AS 担当者リスト
FROM Q_masterCross;

79 :名無しさん@そうだ選挙にいこう:2019/10/21(月) 19:23:29 .net
自己レス 2段目 わざわざdlookup使う必要もないな。
”セレクト” Q_master.仕入先ID,
Max(IIf([index]=1,[担当者],Null)) AS 担当1,
Max(IIf([index]=2,[担当者],Null)) AS 担当2,
Max(IIf([index]=3,[担当者],Null)) AS 担当3
FROM Q_master
GROUP BY q_master.仕入先ID;

80 :名無しさん@そうだ選挙にいこう:2019/10/21(月) 21:01:49.41 ID:BKM/fMzBk
>>71
普通にクロス集計クエリだと思うが
テーブルのフィールド構成ぐらいは書くべき
それがさっぱり分からん。

81 :名無しさん@そうだ選挙にいこう:2019/10/22(火) 12:35:00.32 .net
>>79
定義域集計関数は遅いので
それの方が良いですね。

82 :57:2019/10/22(火) 16:45:03.89 .net
皆様ありがとうございます。
メーカーのデータ
届先コード、届先名称、  商品名、仕入れ金額
1000、田中商店a、    たまご、100円
2000、田中商店b、    肉、300円
3000、鈴木運送事務所  野菜、200円
1000、田中商店a、    肉、300円


会社の担当データ マスタのような物
得意先名 届先名、     届先コード 担当者
田中商店 田中商店a、    1000 A
田中商店 田中商店b 2000 A
鈴木運送 鈴木運送事務所 3000 B
鈴木運送 太郎倉庫    4000 B
山田屋  田中商店b 2000 c

メーカーデータの届先コードを元に担当を探します
田中商店bに届けるパターンが
田中商店から頼まれる場合と
山田屋から頼まれる場合があり困っています

ーカーのデータ
届先コード、届先名称、  商品名、仕入れ金額 担当1 担当2
2000、田中商店b、    肉、300円 A c

このようにマッチング出来れば
田中商店bに届けたお肉は
田中商店か、山田屋のどちらかに売上するんだろうと思えます

83 :57:2019/10/22(火) 16:59:25.81 .net
>>75

売上データとして

得意先名 担当 商品名 〔掲載されてないけど〕
田中商店 A たまご200円 〔田中商店a〕
田中商店 A 肉400円    〔田中商店b〕
鈴木運送 B 野菜300円  〔鈴木事務所〕
山田屋  c 肉600円   〔田中商店b〕


とあるので色々まぜたら識別は可能です
手作業ですが、、、

84 :名無しさん@そうだ選挙にいこう:2019/10/22(火) 18:29:12.65 .net
>>82
一例だけど以下のようにいくつかのテーブルに分けて構成すべきだと思う。

T_得意先
得意先コード(主キー),得意先名

T_届先
届先コード(主キー),届先,得意先コード

T_担当
担当者コード(主キー),担当者名

T_商品
商品コード(主キー),商品名

T_仕入
仕入コード(主キー),商品コード,仕入れ金額,仕入日,担当者コード

T_納品
納品コード(主キー),届先コード,仕入コード,納品日,担当者コード

仕入日や納品日は無いとは考えられないので付けた。
届先コード以外の主キーはオートナンバーで同じ名称の主キーでないコードは、長整数型で
リレーションシップして、同じフィールド名を結合しておく。

85 :名無しさん@そうだ選挙にいこう:2019/10/22(火) 22:19:44.98 .net
基幹システムから出力したプルーフリスト(CSVとかexcelとか)を
再加工する試みですか。
用例がわりと冗長的なので。さらにいうと、架空とはいえ
仕入れと売り上げのプロセスの違いを理解しているか、疑問が残る。
仕入れの段階では「届け先」は関係ないはず。

71に示す実績(ようするに売り上げ伝票)に届け先がリレーショナル
データとして格納(または表示)されていないのが、
そもそもの問題だと思います。
伝票入力時に届け先項目はありますか?(摘要欄で届け先を
テキスト入力するのではなく)
もし届け先も入力しているなら71のプルーフリストに
「届け先」も表示するよう、基幹システムのベンダーに有料依頼
するなどしてください。

86 :57:2019/10/22(火) 23:12:25.63 .net
>>85
ご指摘ありがとうございます。
確かにデータが色々ダメなのです。
会社内にホストコンピューター?と言うものからデータを取り出してもらうのですが
社内の少しだけパソコンに詳しいひとが頑張って取り出してるレベルなので
データがこれ以上頑張れないと言われたので自分でなんとか繋げようとしている状況です。
外部委託して金を払ってでもして欲しいと心から思っております

87 :名無しさん@そうだ選挙にいこう:2019/10/23(水) 00:46:21.88 .net
>>86
ACCESSの話を離れ、ほぼ組織論になってくるけど
一連の書き込みを見てると、
・担当者とは(おそらく)提案営業と商品手配、
小売へのデリバリーまでやっている人。
・基幹システムでは売り上げ伝票に配送先が紐付けされていないか
プルーフリストでの出力が困難。
・ACCESSを使って知りたいのは、得意先ではなく「配送先」の
実績をもとに、誰が仕入れたのかの担当者の絞り込み。

私の中の小売り商流の概念からすると、かなり変わってる。
直の得意先が、「小売店」ではなく、おそらく貴方の
組織も卸業だとすると卸業を2つも挟むのは今時にしては珍しい。
(ただし、メーカーとしては同じ小売店直送でも、相見積もりか
何かの関係で、売りを立てる得意先が変わる、というのは
さほど珍しくない)
さらには、「仕入れた人の特定」が経理上、何のメリットがあるのか
もよくわからない。(仕入れ単価が、毎回スポット的で
「担当者」が見積書との照合・追認をする必要があるのか)

で、まず金をかけずに貴方が最初にすべきことは、リストを作って
くれた人と伝票入力オペレーターへのヒアリングです。
・ERPの標準機能で、ユーザー定義帳票ビルダーが実装されていて
それを使って出力したのか、直接、バックエンドDBにSQLを叩いて
出力したのか。
・売り上げ伝票には配送先項目や、担当者項目が実装および入力が
あるのかないのか。

88 :57:2019/10/23(水) 01:53:19.51 .net
>>87
基幹システムというのは
おそらくコボルで動いています
最新のERP?とかではないです。
データ見るのも昭和の黒い背景の緑の線で描かれた画面からデータを見ます

データを出すのにコボルプログラムを書かないとダメだから難しいと毎回言われます。
過去に作られたバッチファイル?が何かで出せるやつだけと、少し修正して出せる程度の物しか出てきません

担当を調べるというよりは担当者毎の粗利を調べるのも手計算みたいなものです
仕入れがあり、売上もわかるけど、
これはどっちが売ったのか?
が紐付いてないよーなイメージです
データを見せれると早いのですがお得意様の名前などがあるので難しいです。

89 :57:2019/10/23(水) 01:58:08.25 .net
>>76


>
> クエリー1段階目 同じ仕入先IDのなかでindexをつける Q_master
> "セレクト" master.仕入先ID, master.担当者,
> DCount("仕入先ID","master","担当者<""" & [担当者] & """ AND
> 仕入先ID=" & [仕入先ID] & "")+1 AS [index] FROM master;

とりあえず、これがなんとなく自分の力で出来そうなイメージです。、まず同じなのに重複しているものに番号振ってみます。

90 :名無しさん@そうだ選挙にいこう:2019/10/23(水) 08:04:52.11 .net
>>88,89
ホストコンピューターがCOBOLで稼働してても
DBがRDBならACCESSから接続出来ればデータ抽出出来るでしょ

91 :名無しさん@そうだ選挙にいこう:2019/10/23(水) 12:37:47.27 .net
>>90
>データ見るのも昭和の黒い背景の緑の線で描かれた画面からデータを見ます

ということなのでメインフレームをCUIのコンソールで操作してる状況でしょう
PCとの接続も無理かと

それでもCSVとかでデータは取り出せてるらしいから
Excelで加工してAccessに取り込む事は出来てるのでしょう
ただ、その取り込んだテーブルのフィールド構成が妙というか正規化されていないのでしょう。

92 :名無しさん@そうだ選挙にいこう:2019/10/23(水) 12:50:50.51 .net
>>82
Excel使ってそのデータを>>84のように正規化する事をお勧めします
なお担当者についてのデータは記録されてないなら
扱えません
元々のデータベースは担当者を記録していないからです
仕様が変更になった時点で記録をするよう修正すべきだったということです

おそらく運用でごまかして来たのでしょう
悪手です

93 :名無しさん@そうだ選挙にいこう:2019/10/23(水) 12:56:19.30 .net
>>82
追伸
Excelで加工する際
主キーとなるフィールドはExcelでが設定出来ませんのでAccess
に取り込んでから追加設定したしてください

94 :名無しさん@そうだ選挙にいこう:2019/10/23(水) 13:47:32.14 .net
昨今はオフコンデータも活用の途が拓けてるかと 例えば ↓
https://jp.fujitsu.com/platform/server/advantages/special/jokun/16-offcom/
マイグレーションとかで移行してく手も ↓
http://www.cobol.gr.jp/knowledge/material/040727_report/04.pdf

どっかのレジェンドが集まって格安でデータ吸い上げますよ なんてサービスもしてたような

95 :名無しさん@そうだ選挙にいこう:2019/10/23(水) 21:11:33.03 .net
>>94
そんな商売もあるのですね。
オフコンとCOBOLとVT100の呪縛から逃れられない会社もあるんですね。
世の中広い

96 :名無しさん@そうだ選挙にいこう:2019/10/23(水) 21:14:25.89 .net
さすがに西暦2000年問題で、年のデータが2桁しかないDBは消滅したと思い込んでいました。

97 :名無しさん@そうだ選挙にいこう:2019/10/23(水) 23:17:39.20 .net
富士通のNetCOBOL? 今世紀のリリースだけど
値切るとCUIで納品される みたいな奴 システム屋が限界なのかも知らんけど

98 :名無しさん@そうだ選挙にいこう:2019/10/24(木) 08:24:18.86 .net
未だに伝票記帳環境が
CUIというのは組織の業績が著しく悪いか
逆に組織が巨大すぎてシステムが財務まで繋がってるために変えられない、
のどちらかになる。
その場合、一般社員が頑張る必要は本当はない。
やるとするなら、Accessかexcelに仕入れ、売上をなるべく素に近い形でインポートかけて、
担当情報を付加する、伝票の清書のような仕組み。
1仕入れが1売上に直結するのは
今のerpパッケージでも想定していないので工夫は必要。
小売店の納品時に受領証のサインくらい貰うんだろうから
配送営業の担当者についでに判子でも押してもらえば良い。

99 :名無しさん@そうだ選挙にいこう:2019/10/24(木) 08:31:56.88 .net
連投だけど、用例から邪推すると
食べ物扱ってるとして
この度の増税対応(軽減税率対応)
どうするんだ。
適格請求書、作れなさそうだけど。

100 :名無しさん@そうだ選挙にいこう:2019/10/24(木) 12:36:10.56 .net
>>99
それは俺も気になった
そもそも相談者から仕入れ金額は示されてるけど
販売金額はどうするのか開示されてないんだよね

軽減税率の対象外のお酒を頼まれたらどうするのじゃなと

101 :57:2019/10/25(金) 00:30:53.04 .net
>>100
軽減税率とか、複雑なやつは、富士通さんにお願いしてると言ってました。
あと、、経理はオービック?が何か入ってて
お高いにつながってるよーで繋がってないシステムです
経理は凄く、しっかりしてますが
販売系のデータはいまいちと思います

オフコンって画面がまさに今の会社の画面でした
何とかエミュと画面に出て黒背景の緑文字で何かしら入力してます

システム変えないといけないと思いつつずーっといってる感じです
その場しのぎで、やりくりしてるから今更何がどーなのかわからんとの事です

102 :57:2019/10/25(金) 00:34:30.74 .net
https://i.imgur.com/dZxOaT5.jpg

画面はまさにこのイメージです。

103 :57:2019/10/25(金) 00:38:05.69 .net
https://i.imgur.com/5UVEWsx.jpg

色々csvデータをお願いすると
こんな画面でプログラムを作らないといけないから、
となります。
私のイメージは、ボタン1つでデータは出てくるものだと思ってました

104 :名無しさん@そうだ選挙にいこう:2019/10/25(金) 02:54:36.41 .net
>>103
うわ、懐かしい画面・・・
見やすかったけど。

105 :名無しさん@そうだ選挙にいこう:2019/10/25(金) 07:29:24.45 .net
>>103
まだこんな物が存在するのかw

106 :名無しさん@そうだ選挙にいこう:2019/10/25(金) 07:49:44.89 .net
桐にしとけ

107 :名無しさん@そうだ選挙にいこう:2019/10/25(金) 11:19:36.81 .net
AUTHOR Y.SHINOZAKI 氏に頼むのがスジだが
これで何ができるかを知るために上にあるツールバーやメニューを
探ってみるのもひとつの手

ヘルプが充実してればそこから手立てを見い出せるケースも
ボタン系は迂闊に押すとすぐ処理するものも有ったりするので自己責任に成るけど

108 :名無しさん@そうだ選挙にいこう:2019/10/25(金) 14:02:29.07 .net
Me.Dirty=False
でレコード編集確定できるのな
キャンセルだと思ってた

109 :名無しさん@そうだ選挙にいこう:2019/10/25(金) 14:13:38.02 .net
ずーっと前からそうだけど、仕様に明記されてないので、明日変わるかどうかは解らない

110 :名無しさん@そうだ選挙にいこう:2019/10/25(金) 14:44:43.76 .net
>>108
おお。10年使っても知らないことってあるもんだな。
これまでdocmd なんたらで
明示保存かけてたわ。
本当はレコードカーソル動かせば
勝手に確定するんだけど
普通の事務員さんからすると心地悪いんだって。

111 :名無しさん@そうだ選挙にいこう:2019/10/26(土) 19:54:07.00 .net
いや普通のシステム屋にとっても確定押さずに確定なんて気持ち悪いだろ

112 :名無しさん@そうだ選挙にいこう:2019/10/26(土) 20:06:16.22 .net
でも入力側は入力完了したつもりでいる事多いんだよね

入力したのに入ってない!と
登録ボタンで保存する設計なのに苦情来たこと何度か…

113 :名無しさん@そうだ選挙にいこう:2019/10/27(日) 00:33:12.07 .net
>>112 ローカルのフォームオブジェクトにデータソース
指定せず、保存の時に初めてサーバーにデータを
送る仕様なら、「保存」の明示はしやすいけど、
直でデータソースつなげるACESS標準の作り方だと
むしろパージしにくくない?

114 :名無しさん@そうだ選挙にいこう:2019/10/27(日) 04:50:08.59 .net
ローカルでは入力だけでデータを確定させておいて、
DBに保存する際にはトランザクション処理させる

115 :名無しさん@そうだ選挙にいこう:2019/10/27(日) 21:20:27.33 .net
>>114
排他制御は?

116 :名無しさん@そうだ選挙にいこう:2019/10/28(月) 01:14:40.40 .net
>>115 横からだけど、トランザクションの排他自体は
sqlserverなどサーバーの機能・文法に従えば簡単だけど
データ引っ張ってきて、手直しして、書き戻して
の数分間に対する排他の標準的な技法がわからん。
対象テーブルにユーザーID欄を作って
埋めたり、消したりすることで、「入ってます」マーカーに
してみてるけど。

117 :名無しさん@そうだ選挙にいこう:2019/10/28(月) 20:50:53.22 .net
テーブルで通貨型選ぶと最初の書式が強制的に通貨固定になっちゃうのなんとかならんものかな
最初だと数値にして保存してももう一回開くと通貨に戻される

単に精度ある小数使いたいからこの型選んでるのに

118 :名無しさん@そうだ選挙にいこう:2019/10/29(火) 06:49:37.69 .net
>>117
十進数を使うとか

119 :名無しさん@そうだ選挙にいこう:2019/10/29(火) 08:45:28.74 .net
>>117
バカですか

120 :名無しさん@そうだ選挙にいこう:2019/10/29(火) 08:52:19.65 .net
全くの初心者です。
勉強にいい本かサイトってありますか?

121 :名無しさん@そうだ選挙にいこう:2019/10/29(火) 11:53:26.15 .net
>>117
意図が良くわからないのですが
テーブルデザインで対象フィールドの書式を変更すれば固定されると思います
それとは他の問題ですかね

122 :名無しさん@そうだ選挙にいこう:2019/10/30(水) 00:08:14 .net
>>121
その変更が毎回フィールド作る度に要るので煩わしいという意味です

123 :名無しさん@そうだ選挙にいこう:2019/10/30(水) 14:00:39.25 .net
>>120
魔法使いの開発工房 ですね
旧版はwebで公開されてます

124 :名無しさん@そうだ選挙にいこう:2019/10/30(水) 14:13:03.98 .net
>>122
フィールドは書式含めてコピペできますよ
それにフォームレポートならテーブルとは違う書式に出来ますし、コントロールもコピペできます

125 :名無しさん@そうだ選挙にいこう:2019/10/30(水) 14:20:39.73 .net
>122
ついでに、複数のテキストコントロールの書式をまとめて設定できますよ

126 :名無しさん@そうだ選挙にいこう:2019/10/30(水) 14:29:48.05 .net
>>122
もっと言うなら、書式はただのテキストですからコピペできます

127 :名無しさん@そうだ選挙にいこう:2019/10/30(水) 19:14:12.15 .net
>>123
ありがとうございます
参考にします

128 :名無しさん@そうだ選挙にいこう:2019/10/30(水) 21:33:29.63 .net
あたしファースト

129 :名無しさん@そうだ選挙にいこう:2019/11/02(土) 20:45:50.45 .net
例えば売上明細データの担当者の洗い替えとか嫌なので、
担当の配属期間をマスタで持たせようとしたら、どうしたら良いですか?

130 :名無しさん@そうだ選挙にいこう:2019/11/02(土) 23:27:31.57 .net
>>129
どういうことでしょう。
単純には担当マスターにそのまま開始日から終了日を付け足すだけですが。
おそらく、担当id1 の名前がどんどん変わっていく運用をしてるなら
それは間違いで
idは退職しようが異動しようが永久符番です。
売上に(一般的な設計では売上伝票の親情報テーブル)に永久の担当idを埋めるだけです

131 :名無しさん@そうだ選挙にいこう:2019/11/02(土) 23:29:47.89 .net
売上にもたせて、当時の担当と、引き継いだ担当が出るようにしたほうが良い
ってか当時の担当分からないと面倒じゃないか

132 :名無しさん@そうだ選挙にいこう:2019/11/03(日) 12:01:02.36 .net
>>131
スレチかもだけど、私の前任者は津波の犠牲になったので頼れないんですが

133 :名無しさん@そうだ選挙にいこう:2019/11/03(日) 12:36:08.29 .net
横からだけど、文脈から「当時の担当」ってのは、データ上で売上を担当した人のことだよ
生死すらどうでもいい

134 :名無しさん@そうだ選挙にいこう:2019/11/03(日) 12:41:06.60 .net
>>129
>>130の指摘された通りですね
売上つまり商取引の1件毎に担当者IDを売上明細テーブルに入れるだけですね
またトラブル対応を含むアフタサービスでは、担当者IDで特定される担当者が対応し、担当者が退職なら、後任となる担当者が対応するという事でしょう
前任と後任の関係は別テーブルで記録すれば良いかと

この洗い替えが如何なるものか不明ですが
一定期間毎に担当を変える事と売上明細とは直接の関係は有りません

135 :名無しさん@そうだ選挙にいこう:2019/11/03(日) 12:50:40.16 .net
過去の取引も今の担当で対応するから過去の担当情報は要らないので全部塗り替えたいって事なのかな

136 :名無しさん@そうだ選挙にいこう:2019/11/03(日) 13:40:22.92 .net
質問者は要件を明確に書いてちょうだい。

137 :名無しさん@そうだ選挙にいこう:2019/11/03(日) 16:34:58.17 .net
>>135
そうだとしても、それは売上明細には無関係だと思います。
過去の商取引という確定したことを変更することに意味は見いだせません。

売上明細に担当者IDを添えない方針の、特定の販売先に特定の担当を付けるなら

例えば
I社の担当がAさんからBさんに変更になったことは

販売先ID,担当者ID,就任日,離任日
I社のID,AさんのID,2019/04/01,2019/10/31
I社のID,BさんのID,201911/01,9999/03/31
とかいう風にテーブルに記録しておけば良いかと。

ただ、実際の商取引では担当が必ずしも応じられるとは限りませんので
やはり売上明細の一部に担当者IDを入れる方が実態を表す気がします。

138 :名無しさん@そうだ選挙にいこう:2019/11/03(日) 18:46:58.40 .net
>>130
idの担当者名を変えない運用にする場合、
転勤などでエリア担当者情報が管理不能になってしまい、
エリア別の過去データ集計に難儀することになります

要するにidはエリア担当者idとして機能しているのですが、
名前には担当者名を入れていて、その管理も必要といえば必要

となると、システム外で別途担当者の在任期間やエリア担当マスタみたいなのを用意するしかなく、
なんでこんな運用なのかは俺がやったんじゃないからしらねーよってなもんです

139 :名無しさん@そうだ選挙にいこう:2019/11/03(日) 18:50:58.57 .net
>>135
管理の上では洗い替えでOK過去の情報はいらないけれど、
数字を管理する上では、担当者自身の数字とエリア別の数字は過去に遡って変化をみる必要がある

単純にid増やすと1idが百万とかだから上に言えなかったんでしょうね

140 :名無しさん@そうだ選挙にいこう:2019/11/03(日) 19:57:39.66 .net
>>138
そういうコンセプトでいいんじゃないですか。
売上管理じたいは、いじりようのないパッケージを使ってるんだろうし。
たぶんプロが作ったものって必ずしもマスターとのリレーションシップだけに頼ってなくて
記録系は得意先名とか、担当者名まで保存してることが多いので、
もう一度、大元のデータを精査したほうが
無駄な開発をしなくても良いと思う。

141 :名無しさん@そうだ選挙にいこう:2019/11/04(月) 09:43:28.00 .net
>>138
酷いシステムに関わって、ご愁傷様です
よく今まで問題が表面化しませんでしたね

142 :名無しさん@そうだ選挙にいこう:2019/11/04(月) 10:46:32.72 .net
これって担当者として使ってなくて、主語がエリアでオマケで担当者名が付いてるだけみたいな

143 :名無しさん@そうだ選挙にいこう:2019/11/04(月) 11:05:21.60 .net
担当課と担当者のデータを別に持たせるのは普通にあるかたちだし、
項目追加するだけだから修正も容易なんだけどね

144 :名無しさん@そうだ選挙にいこう:2019/11/06(水) 12:54:07.13 .net
>>142
売上明細テーブルにエリアや担当者の氏名なんかを同時に記録するシステム

正規化を知らない新人がエクセルで組んだのに
似たのあったなあ

総レス数 1015
360 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
read.cgi ver.24052200